我的Wordpress网站具有冲突的插件。因此,当我单击菜单中的页面时,页面会卡住,但会在页面重新加载后修复。
我的方法是自动刷新页面(已单击菜单链接),以便页面正确加载。
搜索几天后,我还没有找到确切的方法。 我用
location.reload(true);
,但它会不断重新加载。我也尝试过
location.reload(true);
window.stop();
但是它会在页面加载完成到100%之前停止加载。
所以我的问题是,我们可以添加一个循环来停止重新加载吗? 例如...
2次重新加载后,js代码将停止
希望有人可以帮助我。谢谢!
答案 0 :(得分:1)
尝试这段JavaScript:
if(typeof(localStorage.getItem('rlcount')) == 'undefined'){
localStorage.setItem('rlcount',0);
}
if(localStorage.getItem('rlcount') < 2){
localStorage.setItem('rlcount',localStorage.getItem('rlcount')+1);
window.location.reload();
}else{
localStorage.removeItem('rlcount');
}
答案 1 :(得分:0)
虽然我鼓励您尝试解决导致您描述的行为的根本问题,但您可以执行以下操作来重新加载页面两次:
window.onload = function() {
if (!window.location.hash) {
window.location = window.location + '#loadedOnce';
alert("Reloading first time...");
window.location.reload();
} else if (window.location.hash === "#loadedOnce") {
window.location = window.location.hash.replace("#loadedOnce", "#loadedTwice");
alert("Reloading second time...");
window.location.reload();
} else if (window.location.hash === "#loadedTwice") {
// Page reloaded twice, do whatever...
}
}
这利用了URL中的哈希,因此不需要使用localStorage
API(尽管如果浏览器支持,这也是一种很好的方法,如果已经有了哈希,它可能会更好地工作)在网址中)。
答案 2 :(得分:0)
感谢您抽出时间回答我的问题…… 我找到了一种简单的方法(虽然不是循环)。不确定是否可以,但是当我添加“ return”时它是否可以正常工作。
location.reload();
return;
添加此命令时。只需重新加载一次即可。