我想绑定一些新事件并在动态加载的页面上调用一些函数,但那里的示例似乎过时和/或不完整(甚至是jqm文档)。我正在使用jQuery 1.7.2和jQuery Mobile 1.2。做这样的事的正确方法是什么?
$('#someButton').click(function(e) {
e.preventDefault();
$.mobile.changePage("mypage2.html", {
type: 'GET',
changeHash: true
});
//BELOW SHOULD BE CALLED WHEN THE PAGE LOADS THOUGH
doSomething();
$('#menu_page .request-items', contentScopeOfPage2).click(function (e) {
doSomethingElse();
});
});
答案 0 :(得分:3)
通常,您为有问题的伪页面设置委托事件处理程序,如下所示:
$(document).on('pageinit', '#menu_page', function () {
$(this).find('.request-items').on('click', doSomethingElse);
});
将此代码放在全局范围内,每当初始化#menu_page
伪页面时(无论是远程文档还是同一文档中的伪页面),click
事件处理程序将设置正确。