例如,我有一个网址:如何获得#hash值在URL中JS
我想要一个js代码只是value2x
返回。 我想location.hash.split('=')[1]
但产生的第一散列值一样,如果网址是
它返回fdg&hash
。 我只想要hash
的值。
否jQuery请。
感谢您的帮助提前。
例如,我有一个网址:如何获得#hash值在URL中JS
我想要一个js代码只是value2x
返回。 我想location.hash.split('=')[1]
但产生的第一散列值一样,如果网址是
它返回fdg&hash
。 我只想要hash
的值。
否jQuery请。
感谢您的帮助提前。
function getHashValue(key) {
var matches = location.hash.match(new RegExp(key+'=([^&]*)'));
return matches ? matches[1] : null;
}
// usage
var hash = getHashValue('hash');
如何
location.hash.split('hash=')[1].split('&')[0]
这将在hash=
拆分散列和散列后的值设为=和任何其他参数之前。
这是很不正常工作,使其成为'的位置.href.split('hash =')[1] .split('&')[0]'作品 – 2012-08-12 08:31:35
需要测试更多,现在Upvoting – 2012-08-12 08:32:00
分割上&
,然后=
:
pairs = location.hash.substr(1).split('&').map(function(pair) {
var kv = pair.split('=', 2);
return [decodeURIComponent(kv[0]), kv.length === 2 ? decodeURIComponent(kv[1]) : null];
})
这里pairs
将在0
与键数组的数组和值在1
:
[["hfh","fdg"],["hash","value2x"]]
如果您正在做广泛的网址操作,那么你应该检查出JQuery URL plugin。
要访问的URL PARAMS哈希
$.url('http://www.google.com/#hfh=fdg&hash=value2x').fparam('hash');
,或者如果其当前的URL
$.url().fparam('hash');
希望它可以帮助
这有助于我在此之前,对不起,我没有更早指定,但我不想使用jQuery。 – 2012-08-12 08:35:07
location.parseHash = function(){
var hash = (this.hash ||'').replace(/^#/,'').split('&'),
parsed = {};
for(var i =0,el;i<hash.length; i++){
el=hash[i].split('=')
parsed[el[0]] = el[1];
}
return parsed;
};
var obj= location.parseHash();
obj.hash; //fdg
obj.hfh; //value2x
This res超过'哈希=' – 2012-08-12 08:30:17
@AkshatMittal编辑后的所有内容。 – xdazz 2012-08-12 08:38:27
现在可以使用! – 2012-08-12 08:39:40