js给a标签绑定事件问题

js给a标签绑定了事件,部分代码是否执行取决于localstorage里的一个变量值,另外一个页面或者手动修改了这个值,当前页面在不刷新的情况下能不能根据新值来判断?

$jq(document).on("click", "a[datatype='ta']", function(e){
    if(localStorage["i"]!="0"){//localStorage["i"]可能会变
      tips();
      return false;
     }
});



BIG阳
浏览 1559回答 3
3回答

慕尼黑5688855

是可以的。你可以在页面里定义一个函数,用来检测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的时候执行这个方法。如果没有默认值,可以设置默认值,如果有了默认值,可以根据默认值的不同执行不同的方法。即使在别的页面改变了这个值也是可以的。然后就是在点击事件中,改变了之后可以执行一次。望采纳。

SMILET

当然可以,只要是同一域的页面localStorage就是共通的。其实你自己测试一下不就知道了。

慕婉清6462132

同一个项目下的网页肯定是互通的,你如果是一个网站跟另外一个网站的关系就不行了
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript