Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript btwn和#x27有什么区别;加载';事件与readystatechange';完成';事件_Javascript - Fatal编程技术网

Javascript btwn和#x27有什么区别;加载';事件与readystatechange';完成';事件

Javascript btwn和#x27有什么区别;加载';事件与readystatechange';完成';事件,javascript,Javascript,在我的代码中,在删除加载微调器之前,我将等待页面完全加载。此实例中的“完全加载”包括css、图像等,因此DOMContentLoaded可能发生得太早 我发现load事件和readystatechange事件检查readyState“complete” 问题是,这两者之间有什么明显的区别吗?我希望跨浏览器和设备使用最广泛支持的选项。我见过被称为IE“替代品”的readystatechange,但我认为这两个事件都在Firefox、Chrome和Safari上发生,当我尝试测试它们时。它们几乎相同

在我的代码中,在删除加载微调器之前,我将等待页面完全加载。此实例中的“完全加载”包括css、图像等,因此
DOMContentLoaded
可能发生得太早

我发现
load
事件和
readystatechange
事件检查readyState“complete”


问题是,这两者之间有什么明显的区别吗?我希望跨浏览器和设备使用最广泛支持的选项。我见过被称为IE“替代品”的
readystatechange
,但我认为这两个事件都在Firefox、Chrome和Safari上发生,当我尝试测试它们时。

它们几乎相同-唯一的区别是
readystatechange
事件在
load
事件触发之前更改为
complete
。有关
文档,请参阅。readyState

完成

文档和所有子资源已完成加载。该状态指示
load
事件即将触发

还请注意,您应该将
加载
侦听器添加到
窗口
,并且您需要将处理程序函数传递给
addEventListener
,而不是使用逗号运算符

document.addEventListener('readystatechange',(事件)=>{
如果(document.readyState==“完成”){
log(“readystatechange完成,添加超时”);
setTimeout(()=>console.log('timeout running'));
}
});
window.addEventListener('load',(事件)=>{
log(“加载处理程序正在运行”);
});

我找不到一个好的傻瓜,这个问题已经问了很多次了,但是都没有答案。哎哟,我在发帖的时候,这个语法肯定是错的。谢谢你的片段;那很有趣。
document.addEventListener('readystatechange'), (event) => {
    if (document.readyState === "complete") {
        console.log("page fully loaded");
    }
}

document.addEventListener('load'), (event) => {
    console.log("page fully loaded");
}