您可以使用 jQuery 方法.load()从服务器加载数据并将返回的 HTML 放入匹配的元素中。.toggle ()方法还允许您显示或隐藏元素。
考虑以下示例:假设我们有一个名为index.html的页面...
<header>
<nav>
<ul><li id="nav-about">About us</li></ul>
</nav>
</header>
<section>
<article id="dynamic-viewer">
Dynamic content will be placed here!
</article>
</section>
<aside>
<div id="loader" style="display:none">
<img src="http://www.ajaxload.info/images/exemples/24.gif" />
</div>
</aside>
...我们还有另一个名为about.html的文件,它只是一个视图:
<div>
<h2>About us</h2>
<p>This content is placed dynamically into #dynamic-viewer</p>
</div>
现在,我将使用jQuery.load()方法
将about.html的内容加载到index.html中的内容包装器中。
//Click handler to load the "about" view
$(document).on("click.about", '#nav-about', function() {
fnShowLoading(true);
//Loads the content dynamically
$('#dynamic-viewer').load('views/about.html', function() {
fnShowLoading(false);
});
});
//Shows or hides the loading indicator
function fnShowLoading (show) {
$('#loader').toggle(!!show);
}
实际上,这里唯一重要的行是:
//loads the content dynamically
$('#dynamic-viewer').load('views/about.html', function() { });
//shows or hides the loader section
$('#loader').toggle(!!show);