6

我目前正在努力让 iscroll 4 与 jQuery Mobile 一起工作。

这一切都很好,我禁用了 JQM ajax 默认导航,但我想保留它。

我的问题是我无法弄清楚如何成功调用/绑定 iscroll,因此它适用于需要它们的页面。我尝试了 pageinit() 和 pagecreate() 无济于事。

任何指针都非常感谢。

一个。

4

1 回答 1

8

pageshow我在和orientationchange事件上初始化/刷新 iScroll 实例。data-role="content"我在要滚动的 div上设置了一个类(在本例中,我使用了.content该类)。

var myScroll = [];
$(document).delegate('[data-role="page"]', 'pageshow', function () {
    if ($.mobile.activePage.find('.content').length > 0) {
        if (this.id in myScroll) {
            myScroll[this.id].refresh();
        } else {
            myScroll[this.id] = new iScroll($.mobile.activePage.find('.content')[0].id, {
                hScroll        : false,
                vScroll        : true,
                hScrollbar     : false,
                vScrollbar     : true,
                fixedScrollbar : true,
                fadeScrollbar  : false,
                hideScrollbar  : false,
                bounce         : true,
                momentum       : true,
                lockDirection  : true
            });
        }
    }
});

$(window).bind('orientationchange', function () {
    if ($.mobile.activePage[0].id in myScroll) {
        myScroll[$.mobile.activePage[0].id].refresh();
    }
});
于 2011-10-07T17:04:15.153 回答