我有这个网址: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;
}
答案 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();