Jquery-Mobile:嵌入不带iframe的外部HTML文件

Jquery-Mobile:嵌入不带iframe的外部HTML文件,jquery-mobile,Jquery Mobile,如何在div中加载外部html页面 <div data-role="page" id="pageone"> <div data-role="panel" id="myPanel"> <!--Load nav.html here--> </div> ... 请参阅:面板希望将一些标记作为内容,而不是整个HTML页面 这将在面板内加载导航列表视图: 全幅listview需要一些额外的CSS: /* The left reve

如何在div中加载外部html页面

    <div data-role="page" id="pageone">
  <div data-role="panel" id="myPanel"> 
   <!--Load nav.html here-->
  </div> 
...

请参阅:

面板希望将一些标记作为内容,而不是整个HTML页面

这将在面板内加载导航列表视图:

全幅listview需要一些额外的CSS:

/* The left reveal panel shadow is 5px inset and blurred by 5px */
.ui-panel-display-reveal.ui-panel-position-left .ui-listview {
    margin-right: -10px;
}
编辑:

要测试导航菜单并查看其外观是否符合预期,可以直接在面板内进行设计。为了允许框架创建panelInner,只需在panel div中添加一些内容,即占位符div,或者如前所述,更好的是导航菜单的静态版本。因此,它将被您的外部版本正确地替换


总之,不要写……

谢谢你的回答。我已经在我的例子中使用了它。但是nav.html的内容仍然没有显示。我做错了什么?下面是当前的示例:[这里是一个工作示例:您知道为什么上面的示例see plunkr无法脱机运行在我的桌面上下载和启动的html文件吗?使用Firefox版本76和Chrome进行了测试。$.load只是jQuery.Ajax函数的简写,它不会从文件系统加载本地文件。也许您需要尝试以下操作:
$(document).on('panelcreate', '#myPanel', function () {
    $(this).children(".ui-panel-inner").load("nav.html ul", function() {
        $(this).enhanceWithin().trigger("updatelayout");
    });      
});
/* The left reveal panel shadow is 5px inset and blurred by 5px */
.ui-panel-display-reveal.ui-panel-position-left .ui-listview {
    margin-right: -10px;
}