我不确定什么是最好的方式,但我建议使用jQuery's .load()
与jQuery's .ajaxSetup()
一起。
首先,使用.ajaxSetup()
,这样您就可以缓存未来的ajax请求。
$.ajaxSetup({
cache: true
});
然后,结合使用一个.click()
事件。
这里是我的示例代码...
HTML:
<ul id="nav">
<li id="first">first</li>
<li id="second">second</li>
<li id="last">last</li>
</ul>
<ul id="contents">
<li id="content1">first</li>
<li id="content2">second</li>
<li id="content3">last</li>
</ul>
JAVASCRIPT:
$(document).ready(function(){
$.ajaxSetup({
cache: true
});
$('#nav>li').click(function(){
var url = 7;
index = $(this).index();
url += index;
$('#content' + (index + 1)).load('http://fiddle.jshell.net/dirtyd77/jUEEd/' + url + '/show/');
});
});
DEMO: http://jsfiddle.net/dirtyd77/jUEEd/13/
希望这有助于让我知道你是否有任何问题!
来源
2013-02-25 22:22:52
Dom
我在我的网站上使用.html,所以我不必重新加载数据,每次它只与jquery中的.ajax相对应,这两者都非常有用 – ryanc1256 2013-02-25 21:08:01
Iframes可能对此有所帮助。并不总是隐藏和显示div,只是加载到一个容器中。 – tymeJV 2013-02-25 21:08:19
您可能想查看jQuery的['.load'](http://api.jquery.com/load/)函数。它专门用于调用服务器并获取可附加到指定元素的附加html。 – War10ck 2013-02-25 21:08:44