2

我正在创建一个 jQuery Mobile Web 应用程序。

此链接正常工作:

<a href="/ThePage/25" data-transition="slidedown">Click Here 1</a><!--This is working-->

但是,这些具有锚点的链接不起作用:

<a href="/ThePage/25#3" data-transition="slidedown">Click Here 2</a><!--This is not working-->
<a href="/ThePage/25/#3" data-transition="slidedown">Click Here 3</a><!--This is not working-->

如何使那些#与 ajax 导航一起使用的链接?

编辑:包含这些链接的页面包含一些指向不同文章的链接。并/ThePage/25包含那篇文章的全文。我希望每个链接都转到里面的某个地方/ThePage/25。所以我用过#。(#3指页面中的第三篇文章)...您知道更好的方法吗?

编辑2:我只是想加载/显示一个页面,然后在其中跳转......

编辑 3:我在该页面内的跳转不是简单的跳转。这是一个自定义处理的hashchange事件跳跃。但是如果有任何其他方法,我可以更改该页面...

4

2 回答 2

6

将 rel="external" 添加到任何具有锚点 # 并且您不想通过 ajax 加载的链接。

新链接将是:

<a href="/ThePage/25#3" rel="external" data-transition="slidedown">Click Here 2</a><!--This is not working-->
<a href="/ThePage/25/#3" rel="external" data-transition="slidedown">Click Here 3</a>

有关更多详细信息,请参阅http://jquerymobile.com/demos/1.1.1/docs/pages/page-links.html

于 2012-09-04T18:55:07.983 回答
2

您可以尝试像这样从 JS 中使用它,我遇到了#标签问题:

<a class='homeSet'>Home</a>

……

 $('body').on('click', '.homeSet', function(ev) {
    $.mobile.changePage('/home.html#myhome', {
        transition : "slide"
    });
    return false;
    });
于 2012-09-04T19:09:35.733 回答