相关疑难解决方法(0)

纯JavaScript相当于jQuery的$ .ready() - 如何在页面/ DOM准备就绪时调用函数

好吧,这可能只是一个愚蠢的问题,但我确信还有很多其他人不时会问同样的问题.我,我只是想以任何方式100%确定.有了jQuery,我们都知道这很精彩

$('document').ready(function(){});
Run Code Online (Sandbox Code Playgroud)

但是,假设我想运行一个用标准JavaScript编写的函数,没有库支持它,并且我想在页面准备好处理它时立即启动一个函数.什么是正确的方法来解决这个问题?

我知道我能做到:

window.onload="myFunction()";
Run Code Online (Sandbox Code Playgroud)

......或者我可以使用body标签:

<body onload="myFunction()">
Run Code Online (Sandbox Code Playgroud)

...或者我甚至可以在所有内容之后尝试在页面底部,但结尾bodyhtml标记如:

<script type="text/javascript">
   myFunction();
</script>
Run Code Online (Sandbox Code Playgroud)

什么是以jQuery方式发布一个或多个函数的跨浏览器(旧/新)兼容方法$.ready()

html javascript jquery

1244
推荐指数
8
解决办法
129万
查看次数

javascript domready?

我知道我可以使用不同的框架(如prototype或jquery)将函数附加到window.onload,但这不是我正在寻找的.

我需要像.readyState这样的东西,这样我就可以这样做:

if(document.isReady){
  var id = document.getElem ...
}
Run Code Online (Sandbox Code Playgroud)

除了使用框架的功能之外,还有其他方法吗?

javascript javascript-events

51
推荐指数
7
解决办法
10万
查看次数

如何知道窗口"load"事件是否已被触发

我正在写一个Javascript脚本.此脚本可能会异步加载(AMD格式).

在这个脚本中,在window.load事件被触发之前,我不想做任何重要事情.所以我听窗口"加载"事件.

但是如果在window.load事件之后加载脚本......我怎么知道window.load已经被触发了?

当然我不想在任何其他脚本中添加内容(它们都是异步加载,问题是一样的):)

编辑:

想象一下,根本没有Javascript的HTML文档.

有人在此doc中插入一个标记,并且此脚本标记加载我的Javascript文件.

这将执行我的脚本.

这个脚本如何知道window.load是否已被触发?

我之前没有jQuery,也没有HTML文档中的任何脚本.

有可能知道??

我找到了window.document.readystate属性.此属性用于文档"就绪"事件我gess,而不是窗口"加载".窗口"加载"事件有什么类似的吗?

javascript asynchronous dom-events

45
推荐指数
3
解决办法
3万
查看次数

没有整个框架的Javascript DOM就绪

有没有人知道一个好的javascript DOM就绪库,我可以使用而无需加载整个框架?我在google代码上找到了一个似乎有用的代码,但该库是在2008年发布的,我找不到任何关于最新跨浏览器支持的确认.

javascript domready

17
推荐指数
2
解决办法
7963
查看次数

如何在Google Optimize中的Document Ready上运行Javascript?

如何在Google Optimize广告系列中运行窗口加载或文档准备好的javascript?看起来它允许我选择DOM元素一直到Body,但我需要在文档就绪上运行js.

google-optimize

9
推荐指数
1
解决办法
7400
查看次数

window.document是null还是未定义?

我一直在对window.document对象进行一些研究,以确保我的一个JavaScript解决方案是可靠的.是否存在window.document对象为null或未定义的情况?

为了便于讨论,这里是一段不相关的示例代码.是否有任何情况下这段代码会失败(又称抛出异常)?

$(document).ready(function() {
    var PageLoaded = (window.document.readyState === "complete");
});
Run Code Online (Sandbox Code Playgroud)

javascript dom

8
推荐指数
1
解决办法
2万
查看次数