我遇到了jqueryMobile弹出窗口小部件的问题。 HTML(通过jquery移动网站):
<a id="testId" href="#popupBasic" data-rel="popup">Open Popup</a>
<div data-role="popup" id="popupBasic">
<p>This is a completely basic popup, no options set.</p>
</div>
除此之外,页面上还有一个MVC3寻呼机:
@Html.PagedListPager(Model.Items, page => Url.Action("ListA", "List", new { page }))
加载所有脚本,加载jqyerymobile(使用$ .mobile检查)
测试场景:
我打开一个页面:
列表/利斯塔
并单击链接以显示该对话框。 - 作品
我更改了分页列表的页面,因此我的网址更改为
列表/利斯塔?页= 2
我点击了显示对话框链接 - 没有。
我回到分页列表的第1页,点击show popup,Nothing。
但是:
当我输入像List / ListA?page = 2这样的页面URL并从头开始加载页面时(如新选项卡或窗口),弹出窗口将在此页面上运行,直到pagesList页面发生变化。
在第2步时,我使用Ctrl + R / Crtl + F5强制重新加载页面(取决于浏览器),它开始在此页面上工作。
还尝试了
的所有组合$('#..').popup('open')
.popup('close'), etc,
这一切都让我想到,创建jquerymobile小部件的启动的某些部分在带有&amp; page = something的页面上失败了。 标记就在那里,选择器正确地选择弹出元素,但打开只是不起作用。
或者当页面重新加载到不同的分页列表位置时,某些对象仍保留在浏览器上下文中,这阻止了它们在新页面上重新创建,因此一些有效但不起作用的引用...我不会&#39不知道。
任何人都可以告诉我为什么会发生这种情况?
jquery移动版:1.3.1