我在JQM上找到了一个奇怪的行为。
由于该页面基于JQM锅炉板,因此我不在此处包含整页。我在jsfiddle上发布了代码。
以下是行为点击操作的摘要:
以下是相关代码的摘录:
<div id="oneapart"
data-add-back-btn="true"
data-back-btn-text="List"
data-role="page"
data-title="Home page">
我不明白为什么最后点击列表按钮(jquery移动后退按钮)需要2次点击才能真正对链接进行操作。事实上,奇怪的行为是第一次点击突出显示蓝色按钮,但它保持原样,而不会切换到上一页,直到第二次点击发生。
任何帮助将不胜感激。
问候。
答案 0 :(得分:2)
可以通过在弹出窗口中添加data-rel="back"
来修复此问题。
由于此原因,issue posted on Github已被标记为已解决。
问题出现是因为@jerone中的大型取消按钮的链接中缺少
data-rel="back"
。请参阅此处的“关闭对话框”:http://jquerymobile.com/test/docs/pages/dialog/index.htmlpageTwo上的后退按钮是动态创建的。如果您没有在从dialogThree(也是一个页面)返回到pageTwo的链接上使用
data-rel="back"
,它会将一个项目添加到历史堆栈中。这就是为什么pageTwo上的后退按钮需要两次点击才能真正回到pageOne。 活动状态将从pagehide事件的(后退)按钮中删除。在第一次单击时,您将保持在同一页面上,因此此事件不会触发,按钮将保持活动状态。我添加了
data-rel="back"
,然后一切都按预期工作:http://jsfiddle.net/jEesE/6/关闭已解决。
答案 1 :(得分:1)
你描述的错误包括两部分;
错误的第一部分不是错误;你打开一个弹出窗口,但不是回去(例如data-rel='back'
你打开一个与前一个页面相同的页面。所以如果你按下后退按钮,它会重新打开上一个页面,它实际上是同一个页面。你现在就在(如果有意义的话)。
为什么按钮保持活动状态,我不知道......
编辑:我稍微清理了你的代码:http://jsfiddle.net/jerone/jEesE/3/