Dojo onBeforeTransitionIn not firing
Dojo onBeforeTransitionIn not firing
我在Dojo移动视图(TweetViews)中遇到转换事件问题。我想对视图更改执行操作(比如动态加载内容)。到目前为止,我已经尝试了以下几种:
on(document.getElementById("add"),"onBeforeTransitionIn", function(){
console.log("test");
});
onAfterTransitionIn
、onBeforeTransitionOut
和onAfterTransitionOut
也不起作用。
我怎样才能让它工作?
dojox/mobile
视图)与DOM节点(如使用document.getElementById()
获得的节点)分离。这意味着您不能像实际尝试的那样,在普通DOM节点上使用onBeforeTransitionIn
事件处理程序
幸运的是,小部件从DOM节点调整了它们的ID,所以它应该仍然是"add"
。要通过ID检索小部件,您可以使用:
var myView = registry.byId("add");
dojo/on
模块应仅与DOM事件一起使用。实际上,您可能会让它与自定义小部件事件一起工作,但我认为这不是处理这些事件的正确方式。通常您应该使用小部件on()
功能,例如:
myView.on("beforeTransitionIn", function() {
// Do something
});
还要注意,您在事件名称前面省略了"on"
部分。您还可以使用dojo/on
模块来实现这一点,因此记住这一点以备将来使用可能会很有趣。
我还制作了一个小的JSFiddle来演示事件处理,您可以在这里找到:http://jsfiddle.net/g00glen00b/qct3L/.
由于移动视图是一个小部件,您应该尝试在小部件而不是DOM节点上注册事件。示例:
on(registry.byId("add"), "onBeforeTransitionIn", ...)
注册表引用http://dojotoolkit.org/reference-guide/1.9/dijit/registry.html
相关文章:
- WebSocket onmessage not firing
- Backbone model.change() not firing
- codemirror onKeyEvent not firing
- Dojo onBeforeTransitionIn not firing
- CSS TransitionEnd not firing
- RegisterClientScriptBlock - not firing
- GWT History.back() is not firing onValueChangeHandler
- Signalr connection.start.done not firing
- Javascript XMLHttpRequest onreadystatechanged not firing?
- jstree select_node.jstree not firing
- Jquery not firing
- jQuery.on("drop") not firing
- Javascript window.onload not firing
- MVC 5 javascript not firing
- Javascript FileReader onload not firing
- setTimeout not firing jQuery
- setInterval() not firing
- $.getJSON not firing console.log
- Sails.js IO.socket not firing
- react componentDidMount not firing