Jquery 移动设备:嵌入外部 HTML 文件而不使用 iframe
Jquery Mobile: Embed external HTML file without iframe
如何在 div 中加载外部 html 页面?
<div data-role="page" id="pageone">
<div data-role="panel" id="myPanel">
<!--Load nav.html here-->
</div>
...
我已尝试使用以下代码,但它不起作用。
$( "#myPanel" ).load( "nav.html" );
参见:http://plnkr.co/edit/N6xTrvLHWdOMG9Lq?open=lib%2Findex.html
面板需要一些标记作为内容,而不是整个 HTML 页面。
这将在 panel
:
中加载您的导航 listview
$(document).on('panelcreate', '#myPanel', function () {
$(this).children(".ui-panel-inner").load("nav.html ul", function() {
$(this).enhanceWithin().trigger("updatelayout");
});
});
全角 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;
}
编辑:
要测试您的导航菜单并查看它是否符合预期,您可以直接在 panel
中设计它。要允许框架创建 panelInner
,只需在 panel div
中放置一些内容,即占位符 div
,或者如前所述,更好的是您的导航菜单的静态版本。因此,它将被您的外部版本正确替换。
一言以蔽之,将<!--Load nav.html here-->
写成<div>...</div>
。
如何在 div 中加载外部 html 页面?
<div data-role="page" id="pageone">
<div data-role="panel" id="myPanel">
<!--Load nav.html here-->
</div>
...
我已尝试使用以下代码,但它不起作用。
$( "#myPanel" ).load( "nav.html" );
参见:http://plnkr.co/edit/N6xTrvLHWdOMG9Lq?open=lib%2Findex.html
面板需要一些标记作为内容,而不是整个 HTML 页面。
这将在 panel
:
listview
$(document).on('panelcreate', '#myPanel', function () {
$(this).children(".ui-panel-inner").load("nav.html ul", function() {
$(this).enhanceWithin().trigger("updatelayout");
});
});
全角 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;
}
编辑:
要测试您的导航菜单并查看它是否符合预期,您可以直接在 panel
中设计它。要允许框架创建 panelInner
,只需在 panel div
中放置一些内容,即占位符 div
,或者如前所述,更好的是您的导航菜单的静态版本。因此,它将被您的外部版本正确替换。
一言以蔽之,将<!--Load nav.html here-->
写成<div>...</div>
。