2012-01-27 99 views
2

之间转换时,我有两页,index.html,然后testpage.html我的html页面

testpage.html由两个页面元素foo和它们之间的链接栏设置基本URL jQuery的链接怎么办。

我使用ajax调用从index.html过渡到testpage.html。问题是testpage.html上的链接正在使用index.html作为基础url。所以,当我试图从#foo去#bar我赶上pagechangefail

$(document).bind("pagechangefailed", function(event, data){ 
      alert('failed change ' + data.toPage); 

     }); 

这提醒“未能改变http://domain.com/mobile/index.html#bar

的问题显然是#bar不上的index.html存在,但在testpage.html上存在。我不明白为什么链接试图链接回原始页面。我如何手动设置链接或尝试以某种方式手动覆盖?我试过类似

$.mobile.changePage('testpage.html#bar'); 

但没有运气。

回答

0

我觉得JQM认为这是“深层链接”,但我看这不是你要完成

请注意什么:由于我们使用哈希来跟踪所有Ajax页面的导航历史记录,目前不可能在jQuery Mobile的页面上深入 链接到页面上的主播(index.html#foo), ,因为fram ework将查找ID为#foo 的“页面”,而不是滚动到具有该 ID的内容的本机行为。

我认为(但没有试过),你需要使用$.mobile.loadPage('testpage.html')加载页面到DOM,然后再使用$.mobile.changePage('#bar')过渡。

更多,在这里:

而且我见过使用目标属性,但不知道这会工作使用$.mobile.changePage()