带URL片段的超链接(hashbang)

时间:2014-03-07 10:34:11

标签: html

我有一个网站(网址:http://www.example.com/#!home),其中包含以下超链接:

<a href="http://www.example.com/#!about">About</a>

当我点击链接时,它不会重定向。浏览器什么都没做如何使用/#!about标记导航至<a>页面?

3 个答案:

答案 0 :(得分:1)

此类链接需要在JavaScript中处理。特别是,您需要在页面上使用JavaScript代码来处理hashchange event。我强烈建议将这些链接作为单独的服务器URL发出(即使用“/ about”而不是“#!/ about”),以便禁用JavaScript的浏览器可以导航到它们,然后在注册hashchange事件监听器的代码中,更新所有这些URL以指向哈希值(事实上它在JavaScript中更新证明JavaScript已启用并且可以处理链接)。

答案 1 :(得分:1)

使用字母数字文件夹名称。

答案 2 :(得分:0)

试试这个:

$("a").live("click", function(event){
    var href = $(this).attr("href");
    if(href[0] == "/"){
        event.preventDefault();
        window.location.hash = "#!" + href;
    }
});