如何防止jquery-mobile中的哈希变化

时间:2013-07-04 11:33:08

标签: javascript jquery-mobile

我有一个填充了文章的网站。单击文章会将您带到一个页面,基本上就是这样。问题是我想使用jquery-mobile,因为我将它粘贴到我的文件头中:

<script type="text/javascript" src="scripts/jquery.js"></script>
<script>
    $(document).on("mobileinit", function () {
        $.mobile.changePage("#index", {transition: "slide",reverse: true,changeHash: false});
    });
</script>
<script src="scripts/jquery.mobile.js"></script>

,将用户链接到articleDetail页面不再起作用。我看到URL不接受#标签符号(#)。

例如:

<a href="www.myPage.com/#detail/e98eee7e-5032-4d16-8c69-a441af018b8b"</a>

我希望用户可以使用完全相同的路径重定向到此页面,但jquery-mobile会将其更改为:

www.myPage.com/detail/e98eee7e-5032-4d16-8c69-a441af018b8b

因为没有任何反应。我只在控制台中输出一个输出:

获取www.myPage.com/detail/e98eee7e-5032-4d16-8c69-a441af018b8b 404(未找到)

请帮忙!

1 个答案:

答案 0 :(得分:4)

在脚本中包含这些功能:

$.mobile.hashListeningEnabled = false;
$.mobile.pushStateEnabled = false;

这是由jquery mobile定义来处理启用哈希的链接