jQuery Mobile: ventana emergente en varias páginas

Descripción

Puede usar la misma ventana emergente en varias páginas especificando la ventana emergente como un elemento secundario del elemento del cuerpo usando el data-demo-html atributo.

Ejemplo

El siguiente ejemplo demuestra el uso de ventanas emergentes en varias páginas en jQuery Mobile Framework.

<!DOCTYPE html>
   <head>
      <title>Popup on Multiple Pages</title>
      <meta name = "viewport" content = "width = device-width, initial-scale = 1">
      <link rel = "stylesheet" href = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css">
      <script src = "https://code.jquery.com/jquery-1.11.3.min.js"></script>
      <script src = "https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>
      
      <script id = "popup_script">
         $(function() {
            $( "#popup_page" ).enhanceWithin().popup();
         });
      </script>
   </head>
   
   <body>
      <div id = "popup_page" data-theme = "a">
         <ul data-role = "listview">
            <li>Global Menu</li>
            <li><a href = "#first_page">First Page</a></li>
            <li><a href = "#second_page">Second Page</a></li>
            <li><a href = "#third_page">Third Page</a></li>
         </ul>
      </div>
     
      <div data-role = "page" id = "first_page" class = "jqm-demos">
         <div role = "main" class = "ui-content jqm-content">
            <h2>Example of same popup on multiple pages</h2>
         
            <div data-demo-html = "#popup_page,#second_page,#third_page" 
               data-demo-js = "#popup_script">
               <a href = "#popup_page" data-rel = "popup" class = "ui-btn ui-btn-inline 
                  ui-corner-all">Click to see menu items</a>
            </div>
         
         </div>
      </div>
   
      <div id = "second_page" data-role = "page">
         <div data-role = "header">
            <a href = "#popup_page" data-rel = "popup">Menu</a>
            <h2>Second Page</h2>
         </div>
      
         <div role = "main" class = "ui-content">
            <p>This is second page.</p>
         </div>
      </div>
   
      <div id = "third_page" data-role = "page">
         <div data-role = "header">
            <a href = "#popup_page" data-rel = "popup">Menu</a>
            <h2>Third Page</h2>
         </div>
      
         <div role = "main" class = "ui-content">
            <p>This is third page.</p>
         </div>
      </div>
   </body>
</html>

Salida

Realicemos los siguientes pasos para ver cómo funciona el código anterior:

  • Guarde el código html anterior como jqm_popup_across_multiple_pages.html archivo en la carpeta raíz de su servidor.

  • Abra este archivo HTML como http: //localhost/jqm_popup_across_multiple_pages.html y se mostrará el siguiente resultado.