Jquery mobile:从DOM中删除弹出窗口

Jquery mobile:从DOM中删除弹出窗口,dom,jquery-mobile,caching,popup,Dom,Jquery Mobile,Caching,Popup,在我的JQUerymobile页面中,我嵌入了popup div。 以下是我的页面内容示例: <html> <head>...</head> <body> <div data-role="page" id="myPage" data-dom-cache="true" data-theme="a"> <div data-role="content" data-theme="a" >

在我的JQUerymobile页面中,我嵌入了popup div。 以下是我的页面内容示例:

<html>
  <head>...</head>  
  <body>
     <div data-role="page" id="myPage" data-dom-cache="true"  data-theme="a">
            <div data-role="content" data-theme="a" >...</div>
            <div data-role="footer" data-theme="a" data-id="footer-sante" data-position="fixed">...</div>
            <div data-role="popup" id="popupOne" data-dom-cache="true" data-theme="b">

        </div>

     </div>
     <div data-role="popup" id="popupTwo" data-dom-cache="true" data-theme="b">
    ...
     </div>
  </body>
</html>
是否有一种解决方案可以将弹出窗口保存在DOM中?

  • 在源代码中嵌入弹出窗口是否有更好的位置
  • 另一种方法是从外部(缓存的)页面加载弹出窗口,但我从未通过javascript实现这一点
有没有解决问题的办法(或变通办法)

(两者)此处的HTML位置可能不正确。从页面末尾删除
popupOne
标记,并将其粘贴到
div
中,使用
data role=content
如下所示:

 <div data-role="page" id="myPage" data-dom-cache="true"  data-theme="a">
    <div data-role="content" data-theme="a" >
         <div data-role="popup" id="popupOne" data-dom-cache="true" data-theme="b"></div>
    </div>
    <div data-role="footer" data-theme="a" data-id="footer-sante" data-position="fixed">...</div>       
 </div>
然后你可以,说,打开它:

 popupEl.popup("open");
或者简单地说

 $.makePopup("Some HTML").popup("open"); 
下面是一个演示:

希望这是您想要的:)

(两者)您的HTML位置可能不正确。从页面末尾删除
popupOne
标记,并将其粘贴到
div
中,使用
data role=content
如下所示:

 <div data-role="page" id="myPage" data-dom-cache="true"  data-theme="a">
    <div data-role="content" data-theme="a" >
         <div data-role="popup" id="popupOne" data-dom-cache="true" data-theme="b"></div>
    </div>
    <div data-role="footer" data-theme="a" data-id="footer-sante" data-position="fixed">...</div>       
 </div>
然后你可以,说,打开它:

 popupEl.popup("open");
或者简单地说

 $.makePopup("Some HTML").popup("open"); 
下面是一个演示:


希望这就是您想要的:)

您想在多个页面上使用相同的弹出窗口吗?为什么在弹出窗口已经在DOM
$(“#popupOne”)中时要增强它?要对多个页面使用相同的弹出窗口吗?为什么在弹出窗口已经在DOM
$(“#popupOne”)中时要增强它?您好,谢谢您的示例。它工作得非常好,直到我想在div中添加样式whichdata role=“content”。popup(),.trigger('create'),.trigger('pagecreate')。。。似乎什么都没有改变。JQM不会解析“header”和“content”,并且不会将样式添加到生成的DOM中。有什么想法吗?嗨,谢谢你的例子。它工作得非常好,直到我想在div中添加样式whichdata role=“content”。popup(),.trigger('create'),.trigger('pagecreate')。。。似乎什么都没有改变。JQM不会解析“header”和“content”,并且不会将样式添加到生成的DOM中。有什么想法吗?