2

我正在使用 jquery mobile 最新版本。一切正常。我有一些自定义的外部和内部 JS 脚本。主页中有一个 jquery 幻灯片,效果很好,但是当我导航到另一个页面并按返回主页时后退按钮或单击任何链接,幻灯片停止工作。

如果我添加这些链接data-ajax="false",那么幻灯片在每种情况下都能正常工作。但我不想data-ajax="false"用于快速响应。我怎么解决这个问题?我对 jquery mobile 有点陌生。

4

2 回答 2

3

尝试在页面加载时执行此操作:

$(document).ready(function(){
    $('div[data-role=page]').page('destroy').page();
});

它应该刷新您的页面并让一切重新运行。

于 2012-11-24T19:05:03.777 回答
3

根据文档,当您在 jQuery Mobile 中的页面之间导航时,默认情况下会重新加载内容。当您使用data-ajax="false"它时,它会强制 jQuery Mobile 完全重新加载页面,因此您的脚本可以正常工作。

您似乎有以下幻灯片调用:

$(function(){
     // init gallery on DOM ready
     $('.gallery').slideshow();
});

但是当您使用 jQuery Mobile 在页面之间导航时,您需要在重新加载某些页面时重新初始化您的图库,因此通用代码将如下所示:

$(document).bind('pageinit', function() {
     // init gallery when current page loaded
     $('.gallery').slideshow();
});
于 2012-11-24T19:07:05.510 回答