如何使用dojox / mobile / ScrollablePane事件

时间:2012-09-01 10:20:13

标签: dojo

dojo mobile中的ScrollablePane有一些我们可以使用的事件,就像他们在API documentation中提到的那样。我尝试使用如下。

leftPane.on("onTouchEnd", function(e){
alert("sss");
});

(leftPane是一个ScrollablePane)这不起作用。但是当我使用像“点击”这样的事件时,这就有效。我在网上搜索一个例子,但没找到一个。有人可以帮助我吗?

谢谢。

2 个答案:

答案 0 :(得分:1)

使用:

aspect.after(leftPane, 'onTouchEnd', function(e) { });
当涉及到事件命名时,

dojo / on很棘手 - 你可以从抛弃“on”前缀开始。最有可能的是,只需将onTouchEnd更改为touchend即可

答案 1 :(得分:1)

Dojo事件系统在1.6和1.7之间发生了显着变化。新的on函数和Evented mixin是处理窗口小部件中事件的推荐方法,但_WidgetBase类中有一些向后兼容的函数。

简而言之,您可以使用旧的dojo.connect函数,新的aspect函数(实现旧dojo.connect的“连接到普通javascript方法”功能),或者在on类中使用新的_WidgetBase方法,该方法是两者之间的桥梁。

1. dojo.connect(leftPane, 'onTouchEnd', function(e) { });
2. aspect.after(leftPane, 'onTouchEnd', function(e) { }, true);  // <-- the 'true' is important!
3. leftPane.on('touchend', function(e) { });

YMMV on(3)取决于窗口小部件是否已更新以提供此桥接。