iScroll不使用jQuery Mobile执行

时间:2013-07-19 08:43:12

标签: jquery ajax mobile loading iscroll

我需要在我的jQuery Mobile页面中实现iScroll。我需要它来水平滚动一个大表。自从iScroll 5的第一个测试版发布以来,我想使用这个版本,其中包括一个水平滚动模式。

这是我应该使用的代码的全局语法:

<html>
    <head>
        <meta name="apple-mobile-web-app-capable" content="yes">
        <script src="/JAVASCRIPT/jquery-1.9.1.min.js"></script>
        <script src="/JAVASCRIPT/jquery.mobile-1.3.0.min.js"></script>
        <script src="/JAVASCRIPT/iscroll.js"></script>
        <script type="text/javascript">
            var myScroll;

            function loaded () {
                myScroll = new IScroll('#wrapper', { eventPassthrough: true, scrollX: true, scrollY: false });
                }
        </script>
    <head>

    <body onload="loaded()">
        <div data-role="page">
        <div data-role="content" id="content">
            <div id="wrapper">
                <div id="scroller">
                    <table>
                    </table>
                </div>
            </div>
        </div>
        </div>
    </body>
</html>

问题是jQuery Mobile使用AJAX加载内容。因为带有表的页面不是第一页,我的javascript不会被执行。整个网站应该是一个iPhone webapp,所以我不能跳过这个页面的ajax导航,否则iPhone会在Safari中加载这个页面。该脚本在safari中完美运行,但我的webapp中没有任何动作!

我需要解释如何在页面中加载这几行:

<script type="text/javascript">
    var myScroll;

    function loaded () {
        myScroll = new IScroll('#wrapper', { eventPassthrough: true, scrollX: true, scrollY: false });
    }
</script>

我已经搜索了很多,我发现了一些关于将脚本与pagecreate事件绑定的内容,但我无法使其工作。

iScroll for jQuery Mobile有一个特别的改编版,但它是为iScroll 4制作的......你是我唯一的希望!

英语不是我的第一语言,所以如果你不理解,请问我。

提前感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

尝试类似:

$(document).on('pageshow', '.mypage', function() {
        var myPageScroll = new IScroll('#wrapper', { eventPassthrough: true, scrollX: true, scrollY: false });
});

将“mypage”类添加到您的页面