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

 <div data-role="page"  id="foo3" data-dom-cache="false">
<script>
    $(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('<img src="img/alphabets/'+my_alphabets[i]+'.png" />');
            i++;
            time = 700;

                if(i<26)
                {
                    my_loop();
                }

            }, time)
        }
        my_loop();
    });
</script>
    <div data-role="header" data-theme="b">

        </div>
        <div data-role="content" >

            <div id="content_loop2"  data-inset="true">

            </div>
        </div>
        <div data-role="footer" >

        </div>
    </div>

我所期望的是每次我访问这个页面时它都会初始化。但它只有在我第一次打开时才能正常运行。每隔一次它只显示以前执行的代码的输出。
请帮我怎么做。

最佳答案

Pageinit应该只运行一次,它被设置为像文档一样就绪。
如果希望每次访问页面时都运行代码,请使用pageshowpagebeforeshow
阅读更多关于它的here

关于android - 如何在一个HTML文件中将pageinit用于多个data-role = page,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17693035/

10-09 15:41