我目前正在开发一个网站并遇到了问题..(ajax加载存储的网址)以为有人可以提供帮助..
首先是示例页面布局:
<div id="main-container">
<div id="top-menu">
<a href="/link1" rel="ajax" />Link 1</a>
<a href="/link2" rel="ajax" />Link 2</a>
</div>
<div id="content">
<div id="results">
<!-- category results go here -->
<a href="/link1/category/cat-1/page/1" rel="ajax" />page 1</a>
<a href="/link1/category/cat-2/page/2" rel="ajax" />page 2</a>
</div>
<div id="categories">
<a href="/link1/category/cat-1" rel="ajax" />cat 1</a>
<a href="/link1/category/cat-2" rel="ajax" />cat 2</a>
</div>
</div>
</div>
如果我想通过点击链接加载内容,一切都很好..当我想启用历史记录支持(创建深层链接网址)时,困难部分就开始了。
如果给出完整的网址,我无法弄清楚如何加载必要的部分,例如
site.com/link1.html#/category/cat-1/page/
我有一些想法:
那么结果应该有点像facebooks导航,你可以在主页,消息,朋友列表之间导航而不刷新页面..然后在每个地方你可以通过子链接导航..
答案 0 :(得分:1)
tnx :)看了一下..它是一个非常好的插件,然而,在思考了一下我想出了我失踪的部分..(可能应该包括js代码)
var hash = window.location.hash.substr(1);
var href = $('a[rel=ajax]').each(function(){
var href = $(this).attr('href');
var where = $(this).attr('test');
//alert(where);
if(hash==href.substr(0,href.length-5)){
var toLoad = hash+'.html';
$('#content_full').load(toLoad)
}
});
如果找到哈希值(在页面加载后),则会调用这些行。(我想让脚本太高级了......而不是使用加载数据的默认容器,我想采取来自网址的位置..(不要问为什么......))
所以现在一切都应该工作得很好:)(我将为每个ajax链接添加一个变量,关于它应该加载到哪个部分,然后将这个数据发送到php脚本,这将输出必要的数据(只需要部分),如果不设置此var,则脚本将输出完整内容)
答案 1 :(得分:0)
查看Ben Alman's BBQ: Back Button & Query Library Plugin
使添加后退按钮支持变得非常简单