当我写url并按回车键时,如何从url获取哈希码?

时间:2012-09-18 01:52:20

标签: jquery url hashtag

我有这个网址:example.com/index.html#tab-1

我在网址 example.com/index.html#tab-1 后写入浏览器,然后按回车键 - 页面将无法加载。

我想获取参数tab1并使用id tab1加载内容。

我的代码:

我称这个函数为:

//to load

showTabContent(gethash);


showTabContent: function(id)
        {
            if(id != null)
            {
                var tabid = id.split("-");
                $("#tab"+tabid[1]).show();
            }
        },

gethash: function()
        {
            var hash = window.location.hash;
            if($.trim(hash) != "") return hash;
            else return null;
        }

2 个答案:

答案 0 :(得分:0)

您可以使用此功能将URL解析为对象:http://james.padolsey.com/javascript/parsing-urls-with-the-dom/。返回对象后,可以使用对象的属性来获取所需的URL部分。

此帖中提供了类似的答案:String URL to json object

答案 1 :(得分:0)

检查这个jQuery插件:

JS档案:https://raw.github.com/cowboy/jquery-hashchange/master/jquery.ba-hashchange.min.js

代码的解决方案:

<强> HTML:

<a href="#tab-1">Tab1</a>
<div id="tab1"></div>

<强> JS:

obj = {
    checkHash: function(){
        $(window).hashchange( function(){
            var hash = location.hash;
            obj.showTabContent(hash);
        })
    },
    showTabContent: function(id)
    {
        var tabid = id.split("-");
        $("#tab"+tabid[1]).show();
    } 
};

//init
obj.checkHash();