2

我正在使用 jQuery Mobile 的默认行为,其中我的 href 链接指向我网站上的不同页面。这完全改变了 URL。有没有办法让它更新哈希而不是更改 URL?直接访问时,单独的页面不起作用,因此散列是有意义的(有利于书签)。我也不必担心从那里的相对路径,因为我仍然在我的站点的根目录中。有什么方法可以像对话一样做到这一点?

4

2 回答 2

4

您可以通过设置禁用此pushStateEnabled功能false

这是在mobileinit事件中完成的。例如:

<script type="text/javascript">
$(document).bind("mobileinit", function(){
    $.mobile.pushStateEnabled = false;
});
</script>

<script src="jquery-mobile.js"></script>

请注意,mobileinit必须在将 jQuery mobile 包含到页面之前附加。有关更多信息,请查看jQuery Mobile 配置默认文档页面

于 2012-08-14T15:14:17.177 回答
1

对于 jQuery Mobile 1.4.5 版本,我们发现另外需要设置changePage.defaults.changeHashhashListeningEnabled参数false

例子:

<script>
    $(document).bind('mobileinit',function(){
        $.mobile.changePage.defaults.changeHash = false;
        $.mobile.hashListeningEnabled = false;
        $.mobile.pushStateEnabled = false;
    });
</script>

来源: jquery-mobile/no-hash-tests.html at cb9112abb3acf73abc104051ac318647055b189c · jquery/jquery-mobile · GitHub

于 2014-11-19T16:08:43.970 回答