我想知道是否有可能知道用户是否让页面加载,或者他是否从 Chrome 或 Firefox 中单击 X 以阻止它的执行。
我有这个代码:
jQuery(window).load(function () {
if (condition == 1){
...
else
...
如果用户让网站加载到最后,第一个条件将符合。
如果用户强制停止加载,则符合第二个条件。
我想知道是否有可能知道用户是否让页面加载,或者他是否从 Chrome 或 Firefox 中单击 X 以阻止它的执行。
我有这个代码:
jQuery(window).load(function () {
if (condition == 1){
...
else
...
如果用户让网站加载到最后,第一个条件将符合。
如果用户强制停止加载,则符合第二个条件。
如果用户点击 X 那么这意味着他很可能没有加载 jQuery 库,或者你的代码......
如果您想检查页面是否已完全加载,那么有一个技巧可能会有所帮助......
在页面末尾放置一个 div 并在它准备好时将事件绑定到它
jQuery('.div-trick').load(function () {});
编辑:更多你可以将你的jQuery代码放在页面的末尾......
注意:不要忘记不要用准备好的文档包装你的代码,因为那样它就不会被解雇......
编辑:嗯,我想我的最终解决方案是这样做......
function loadchecker() {
if($('.div-trick').length<0){
alert('page is not fully loaded');
} else {
alert('now the page is loaded')
}
}
// fast counter is an over kill but it wills stop when the page is loaded
var checker = window.setInterval(loadchecker, 5);
//then on my documnet ready i will
$(function(){
clearInterval(checker);
});
相当肮脏的解决方案,但我能说这就是我所知道的所有可以做的......
至于你最后的评论,你为什么要检查他是否没有加载页面!您需要做的就是检查页面是否已加载并给他奖品
$(function(){
// page is fully loaded
// you will get the prize
});
或在加载图像或添加您想要的内容时绑定ajax调用...如上所示...
你可以试试:
if (document.readyState === "complete") {
// Loaded
} else {
// Not loaded
}
或者只使用 jQuery:
$(document).ready( function() {
// Loaded
}