如何在一个html文件中将pageinit用于多个data-role = page

我的一个html文件中有多个页面。 我试图在第二个data-role =“page”上实现pageinit事件处理程序。 所以我在其特定的data-role =“page”中声明了pageinit。

$(document).on('pageinit','#foo3' , function(){ abcsong_file_path = '/android_asset/www/audio/abcsong.mp3'; my_abc = new Media(abcsong_file_path); my_abc.play(); var i =0; var time; function my_loop(){ setTimeout(function (){ var my_alphabets = ["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z"]; $('#content_loop2').append(''); i++; time = 700; if(i<26) { my_loop(); } }, time) } my_loop(); });

我期望的是每次访问此页面时它都会初始化。 但它只在我第一次打开时正确运行。 每隔一次它只显示以前执行的代码的输出。

请帮我怎么做。

Pageinit应该只运行一次,它就像文件就绪一样。

如果您希望每次访问页面时都运行代码,请使用pageshowpagebeforeshow

在这里阅读更多相关信息。

根据文档,Pageinit 应该只发射一次,但至少在之前的版本中并不是真正的事实。

我目前正在使用jQM 1.3.2,并且不再在Android或桌面浏览器中遇到此问题。 但要注意它,特别是如果你也使用Phonegap。

文档pageinit在iOS(jQueryMobile)上不止一次触发