jquery移动更改页面,从javascript进行页面转换

jquery移动更改页面,从javascript进行页面转换,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,我在本页的帮助下进行转换: 我在单击链接时进行转换: <a href="#page1" data-transition="slide" data-role="button" > Submit </a> 我现在的链接是: <a onclick="GoTopage1()" data-transition="slide" data-role="button" > Submit </a> 我怀疑,因为您正在使用锚标记中的onclick绑定,所以您的方法

我在本页的帮助下进行转换:

我在单击链接时进行转换:

<a href="#page1" data-transition="slide" data-role="button" > Submit </a>
我现在的链接是:

<a onclick="GoTopage1()" data-transition="slide" data-role="button" > Submit </a>

我怀疑,因为您正在使用锚标记中的
onclick
绑定,所以您的方法首先发生,然后jQuery mobile可能会说“我们已经做到了,不需要转换”

我想知道您是否可以使用jQuery mobile中的
$.mobile.changePage()
方法,而不是设置window.location。这可能会通过jQuery移动代码推动活动,并使转换工作正常

或者,因为jQuery页面逻辑基于hashchange事件,所以您可能应该设置location.hash而不是location。您可以在此处查看文档:

编辑:从jQuery Mobile 1.4开始,$.Mobile.changePage()已被弃用,应改用$.Mobile.pageContainer.pageContainer(“更改”)。例如:

$.mobile.pageContainer.pagecontainer("change", "#page1", {transition: "slide"})

您可以使用以下选项:

  • $.mobile.navigate(#bar),{转换:“幻灯片”,信息:“关于#bar散列的信息”})
  • $.mobile.pageContainer.pageContainer(“更改”、“目标”{transition:“流”,changeHash:false,reload:true})
  • 还值得注意的是,
    $.mobile.changePage()
    现在已被弃用,不应再使用。

    我想我会从其他线索中学到的知识来回答这个问题。
    我没有足够的声誉来建立其余的链接。只需在谷歌上搜索代码,找到各自的StackOverflow线程。

    我已经尝试了$.mobile.changePage,但它不起作用。。。我不是两者都用。我为onlcick事件替换了
    href=“#page1”
    $.mobile.changePage(“#page1”,{转换:“幻灯片”})
    工作得很好,当然,因为它工作得很好,所以在1.5.0中它将被弃用(是的,它们确实弃用了这样的基本函数),我喜欢它。谢谢。
    <a id="t1" href="#page1"  data-transition="slide" ></a>
    
    function GoTopage1()
    {
        if(someVar == true)
            $("#t1").click(); // simulate link click        
    }
    
    $.mobile.pageContainer.pagecontainer("change", "#page1", {transition: "slide"})