最初的想法是根据当前网址将某个单选按钮设置为已选中。 出于某种原因,我的if语句不起作用。通向该页面的链接URL如下所示
domain.com/subdir/pagename#showteal
我的代码是
if(window.location.href.indexOf("showblack") > -1) {
alert('black');
}
if(window.location.href.indexOf("showteal") > -1) {
alert('teal');
}
答案 0 :(得分:0)
由于您正在使用jQuery在哈希中查找字符串:
$(window).bind( 'hashchange', function(e) {
if(window.location.hash.indexOf("showblack") > -1) {
alert('black');
}
if(window.location.hash.indexOf("showteal") > -1) {
alert('teal');
}
});
答案 1 :(得分:0)
尝试:
window.location.hash.indexOf(" showteal&#34)
答案 2 :(得分:0)
我认为您应该尝试使用GET语法来执行此操作,因为哈希用于将页面锚定到元素ID中。
因此,使用GET,您的链接看起来像domain.com/subdir/pagename?show=teal
这个功能可以解决问题:
function get(name){
if(name=(new RegExp('[?&]'+encodeURIComponent(name)+'=([^&]*)')).exec(location.search))
return decodeURIComponent(name[1]);
}
它的使用变得简单,如var show = get("show");
我希望它适用于你。