我遇到了一个问题(我仍然需要解决)我的整个页面无法加载。它在元素的中间被切断。
有没有办法使用 jquery 或 javscript 来做类似的事情:
如果(某些元素尚未加载){刷新页面}
我正在考虑将<div id="end_of_page"></div>
其放在页面底部,并检查是否已呈现,如果没有,我会知道出现问题并可以重新加载以重试。
谢谢!!
我遇到了一个问题(我仍然需要解决)我的整个页面无法加载。它在元素的中间被切断。
有没有办法使用 jquery 或 javscript 来做类似的事情:
如果(某些元素尚未加载){刷新页面}
我正在考虑将<div id="end_of_page"></div>
其放在页面底部,并检查是否已呈现,如果没有,我会知道出现问题并可以重新加载以重试。
谢谢!!
您可以使用
$(document).ready(function(){
// code here
});
该代码只会在页面加载后运行。一个方便的简写是:
$(function(){
// code here
});
假设您的 jQuery 对象是$
. 为了完成您的要求,您可以在加载函数中设置一个变量,然后使用在页面开头设置的计时器来检查它。如果不存在,请重新加载。
就个人而言,我认为您应该花一些时间来弄清楚为什么您的页面只能中途(Firebug 或 Chrome Inspector 可能会帮助您做到这一点,它可能是您页面中的资源导致它挂起,并且由于大多数 HTTP每个主机名一次只发出 2 个请求,它可能会在获取其余请求之前等待它返回)。
可能是服务器端问题或某些脚本或库正在窃取您的鱼 $
(又名:“美元”)。
我宁愿建议您调试代码,而不是刷新试图解决问题的页面。
确保您的脚本在head
您的文档中,
并且jQuery + 您的jQ 函数在结束</body>
标记之前包含在:
(function($){ /*your functions*/ })(jQuery);
有没有办法使用 jquery 或 javscript 来做类似的事情:
如果(某些元素尚未加载){刷新页面}
你可以这样做,是的。在包含 jQuery 之后把它放在头上:
<script>
jQuery(function($) {
if (!$("#end_of_page")[0]) {
// Something went wrong, load again
location.reload();
}
});
</script>
end_of_page
如果在 jQuery 事件触发时元素不存在ready
(这意味着在页面完成加载时),您将进入循环的主体(因此,强制重新加载)。
但是:最好弄清楚为什么你的页面在中途被切断并解决这个问题。这种解决方法不是解决方案。