很抱歉在JQuery mobile上提出这样一个基本问题,但我不太清楚。
使用单页模型(将应用拆分为多个页面),所有脚本都会在着陆页上加载。但是,UI元素(例如按钮)可能不会出现在点击深入的几页之后。我在哪里以及如何绑定尚未加载的事件?或者如何在加载页面时绑定事件? $(document).bind("pagecreate", function(){})
只会在着陆页上运行,但我想我需要在小部件出现后绑定。
我这样绑定它:
$(document).bind("pagecreate", function(event, data) {
$('#btn_newuser2').on('vclick', function(event) {
// do something here.
});
});
答案 0 :(得分:0)
如果您使用delegation,则您是pagecreate
事件中所有DOM元素的安全绑定事件处理程序:
$(document).on("click", "#my_button", function()
{
// handler
});
在此示例中,click事件绑定到整个文档,但第二个参数是子元素的选择器。正如文档中所述:
事件委托允许我们将单个事件侦听器附加到父元素,该元素将为匹配选择器的所有后代触发,无论这些后代现在是存在还是将来添加