Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';这是执行$(文档)的正确方法。在jQuery Mobile中准备好了吗?_Jquery_Jquery Mobile_Document Ready - Fatal编程技术网

什么';这是执行$(文档)的正确方法。在jQuery Mobile中准备好了吗?

什么';这是执行$(文档)的正确方法。在jQuery Mobile中准备好了吗?,jquery,jquery-mobile,document-ready,Jquery,Jquery Mobile,Document Ready,假设我想在jQueryMobile完成呈现UI后运行一些代码。mobileinit事件不起作用,因为它是在该事件发生之前引发的。快速的谷歌搜索似乎表明,简单地使用$(document.ready对JQM不起作用;但我只是尝试了一下(在mobileinit之后调用),它对我很有效:我的代码运行并动态更新了元素,等等,一切都很好。所以我想知道,是不是有什么原因我不应该使用它(它不可靠或弄乱了JQM),或者是关于它的信息不准确?我错过了什么 更新:有关演示,请参阅。很可能是您阅读该$(文档)的原因。r

假设我想在jQueryMobile完成呈现UI后运行一些代码。
mobileinit
事件不起作用,因为它是在该事件发生之前引发的。快速的谷歌搜索似乎表明,简单地使用
$(document.ready
对JQM不起作用;但我只是尝试了一下(在
mobileinit
之后调用),它对我很有效:我的代码运行并动态更新了元素,等等,一切都很好。所以我想知道,是不是有什么原因我不应该使用它(它不可靠或弄乱了JQM),或者是关于它的信息不准确?我错过了什么


更新:有关演示,请参阅。

很可能是您阅读该$(文档)的原因。ready不适用于jQuery Mobile,因为它不会在每次查看伪页面时触发。也就是说,它仍然会在加载html文档时触发

如果要运行每次查看伪页面时触发的代码,可以使用以下代码:

$('[data-role="page"]').live('pageshow', function () {
    //run your code here
});
注意:您还可以绑定到其他挂钩(pageshow、pagehide、PageBeforeShow、pagebeforehide),文档可在此处找到:

------编辑----

我在考虑这一点,这是对$(document).ready()的最佳模拟,它不绑定到“pageshow”事件,而是绑定到“pagecreate”事件$(document).ready()在每次页面加载时触发一次,“pagecreate”对伪页面执行相同的操作,而“pageshow”则在每次显示页面时触发

因此,如果用户点击离开主屏幕,然后点击后退按钮返回主屏幕,“pageshow”将在主屏幕的第二次(以及随后的“显示”中启动


此外,“pageshow”要求用户导航到绑定到的页面。

您检查过吗?@George:是的,根据问题
$(文档)。ready
不起作用。但奇怪的是,对我来说,确实如此。所以我想我只是想弄清楚它现在是否有效,或者在处理JQM时是否存在一些我应该知道的奇怪的问题;所以说它“不起作用”的想法一直是基于误解?这很有趣;我看到了这些替代方法,认为它们不够理想,因为它们导致在显示每个伪页面之前触发事件,而不是在整个文档(即jQuery移动站点)中只触发一次事件。而后者正是我想要的。@jasper您正在链接到alpha版本的api事件,最好使用beta版本