js给a标签绑定了事件,部分代码是否执行取决于localstorage里的一个变量值,另外一个页面或者手动修改了这个值,当前页面在不刷新的情况下能不能根据新值来判断?
$jq(document).on("click", "a[datatype='ta']", function(e){
if(localStorage["i"]!="0"){//localStorage["i"]可能会变
tips();
return false;
}
});
是可以的。
你可以在页面里定义一个函数,用来检测localStorage的值,通过不同的值定义不同的方法。
然后在页面初次加载,以及localStorage改变的时候引用这个方法即可。
首先定义一个检测localStorage值的方法
function checkLocalStorage(){
var storage=window.localStorage;
//检查i字段
vart i = storage["i"]
if( i == undefined){
// 这里的初始值你可以自由设置
storage["i"] = '';
} else if ( i == 0 ){
// 执行方法1;
...
} else if (i==1){
// 执行方法2;
...
}
}
然后再window.onload的时候执行这个方法。如果没有默认值,可以设置默认值,如果有了默认值,可以根据默认值的不同执行不同的方法。
即使在别的页面改变了这个值也是可以的。
然后就是在点击事件中,改变了之后可以执行一次。
望采纳。
当然可以,只要是同一域的页面localStorage就是共通的。
其实你自己测试一下不就知道了。
同一个项目下的网页肯定是互通的,你如果是一个网站跟另外一个网站的关系就不行了