0

我的网站必须由一组 jQueries 提供支持;使用一组菜单按钮动态加载内容。

现在,我想知道的是:

你在博主上见过吗?网址就像

blogger.com/blogger.g?blogID=abcd#id

对于#id,如果您输入#overview,它会显示统计信息。如果您放置#allposts,它会显示所有帖子,同样内容仅取决于url中的#id。我见过很多网站也使用这种方法来提供 PermaLinks。

该怎么做?对于每个菜单按钮,我提供了一个#id,如果在 url 中传递,我需要切换到该特定菜单。

注意:我使用 PHP、js、jQuery 和 HTML5 +/- Ajax

PS:拜托,不要说可以用这个那个那个!我是一个知识的中间人,即我不是专业人士。所以请给我一些算法或代码。

提前致谢 :)

4

2 回答 2

2

window.location.hash将包含 URL 中的哈希值(#id#overview等...)。然后,您可以使用在您的页面加载时运行的 javascript 检查 window.location.hash 的值,并根据它包含的内容,如果需要从服务器检索数据,您可以使用 ajax 调用修改您的页面。

哈希值不会发送到服务器,因此它必须是处理它的客户端代码。

至于具体的代码,你会使用这样的东西;

$(document).ready(function() {
    switch(window.location.hash) {
        case "#id":
            // code here
            break;
        case "#overview":
            // code here
            break;
        default:
            // code here
            break;
    }
});

那里的具体代码显然取决于您要做什么。如果您需要从服务器获取数据,那么您将发出 ajax 调用来检索该数据。

于 2012-06-17T04:35:22.133 回答
0

这称为哈希值,浏览器不会将其发送到服务器,它们只能通过 javascript 访问。它们可以通过以下方式检索

var hash_val = window.location.hash;    

Javascript 还提供哈希更改的事件

window.onhashchange = function(){
}

如果你想让它修改内容然后

window.onload=function()
  {
   var hash_val = window.location.hash;    
    //do more ajax stuff here
  }
于 2012-06-17T04:36:58.433 回答