AJAX SEO - 返回&前进按钮

时间:2011-10-11 08:54:06

标签: javascript jquery hash seo

我正在使用Ben Almans插件进行哈希变更跟踪:

http://benalman.com/projects/jquery-hashchange-plugin/

此外,我已经修改了我的Web配置,以便在您输入www.mysite.com/test1时,PHP使用 test1值抓取字符串,将其转发到JavaScript。 JavaScript通过AJAX将其发送到服务器端脚本并返回 test1 page

在地址栏中写入www.mysite.com/test1的所有用户获得 test1页面之后。 一切都很好。

现在。如果输入www.mysite.com,则只能看到索引页面,并且有一个指向 test1页面的链接。 如果按下它,它会生成地址www.mysite.com/#test1,并且由于该#哈希更改插件可以在您按下后退按钮时使用AJAX返回。

我想要的是拥有这样的哈希更改插件或方法或系统,它们不需要那些#标志。因为我希望用户看到像www.mysite.com/test1一样的干净地址。

这可能吗?

1 个答案:

答案 0 :(得分:0)

那是不可能的。 #是该位置的哈希部分的前缀。哈希通常不会发送到服务器,因此,更改哈希不会导致页面请求。

当您省略sharp(这是#字符的名称)时,将启动页面请求。

如果你想要SEO网址,我建议使用这个“

<script>
$(document).ready(function(){
    var base_url = location.protocol + "//" + location.host + "/";
    $("a[href^='+base_url+']").bind("click", function(ev){
        location.hash = $(this).href.substr(base_url.length)
        ev.preventDefault();
    })
});
</script>
<a href="http://www.mysite.com/test1">Link</a>

这将绑定文档中每个onclick元素的<a>,其中href属性以基本网址开头。