我有一个overrides.js
脚本,它在我的应用程序中设置默认值,如下所示:
$(document).bind("mobileinit", function(){
$.mobile.autoInitializePage = false;
$.mobile.pushStateEnabled = false;
$.mobile.defaultPageTransition = "fade";
$('html').addClass('viewGrid');
console.log("mobileinit detected in overrides");
$(window).trigger('jqm-ready');
});
在加载之后和加载之前将其overrides.js
拉入。在我的页面上,页脚中有这个片段:requireJS
Jquery
Jquery Mobile
console.log("page done loading");
window.addEventListener('jqm-ready', function(){
console.log("detected jqm-ready")
// run some code
});
document.addEventListener('mobilelinit', function(){
console.log("mobilelinit detected from page");
// run some code
});
我的控制台显示以下内容:
page done loading
mobileinit detected in overrides
因此,我无法通过在页面上添加的 eventListener检测到mobileinit
我的自定义事件。jqm-ready
当我使用requireJS
时,我无法使用 Jquery 来检测mobileinit/jqm-ready
,因为页面在 Jquery 加载之前被解析。我希望能够检测到任何一个事件,但到目前为止还没有运气。我需要检测它们,因为我需要运行的代码需要绑定到 Jquery Mobile 事件。
问题:
我的代码片段有什么问题,或者为什么我不能像这样绑定到 mobileinit 或 jqm-ready?