JQueryMobile:从菜单中的LI打开时,对话框样式为页面

JQueryMobile:从菜单中的LI打开时,对话框样式为页面,jquery,jquery-mobile,dialog,Jquery,Jquery Mobile,Dialog,我正试图打开一个对话框(data rel=“dialog”),在我制作的下拉菜单中形成一个链接。然而;JQM一直以完整的页面视图(data role=“page”)打开它 更奇怪的是,当从同一页面上的按钮或listview打开同一个对话框时,会打开一个正确的对话框(data role=“dialog”) 如果我首先通过按钮启动对话框;从菜单项启动对话框的后续尝试也会将其显示为对话框。但是如果我首先通过菜单项启动对话框;它被呈现为一个页面 菜单项中的链接(以页面形式打开对话框) “链接入

我正试图打开一个对话框(data rel=“dialog”),在我制作的下拉菜单中形成一个链接。然而;JQM一直以完整的页面视图(data role=“page”)打开它

更奇怪的是,当从同一页面上的按钮或listview打开同一个对话框时,会打开一个正确的对话框(data role=“dialog”)

如果我首先通过按钮启动对话框;从菜单项启动对话框的后续尝试也会将其显示为对话框。但是如果我首先通过菜单项启动对话框;它被呈现为一个页面

菜单项中的链接(以页面形式打开对话框)

“链接入”按钮(将对话框作为对话框打开)


listview中的链接(以对话框形式打开对话框)

这里有一个演示的例子

2个问题:

1) 为什么会有这种行为上的差异


2) 如何从菜单项强制将对话框作为对话框打开?

找到了我查询的第二部分的答案:

用data role=“dialog”(而不是“page”)标记div将强制它始终呈现为对话框

<div data-role="dialog" id="showDialog">

我仍然想从别人那里了解为什么会有这种行为上的差异

<a href="#showDialog" data-role="button" data-rel="dialog">Show Dialog</a>
<ul data-role="listview" data-inset="true">
    <li><a href="#showDialog" data-rel="dialog">Show Dialog</a></li>
</ul>
<div data-role="dialog" id="showDialog">