gpt4 book ai didi

javascript - 异步嵌入脚本后是否需要使用 window.onReady()?

转载 作者:行者123 更新时间:2023-11-30 13:33:56 25 4
gpt4 key购买 nike

我正在实现异步加载脚本的功能。 XHR 完成后,我将代码插入文档并调用回调方法。回调方法使用动态加载的代码。

我想知道的是,在附加脚本被解析之前我的回调会被调用吗?我是否需要使用 window.onReady() 并让浏览器引擎解析附加脚本并触发 window.onReady() 然后调用我的回调方法?

请不要告诉我使用<your favority library here> ,因为我这样做是为了学习。

编辑:或者,我应该插入一个带有 src 的脚本元素吗?和 async设置并收听脚本元素的 readystatechange事件?

最佳答案

这实际上取决于您如何加载它。

您可以加载一个脚本,然后在加载它之后对 responseText 进行 eval()。

或者,您也可以document.createElement('script'),然后调用回调方法。

伪代码:

load_xhr('path/to/js', function onReady (responseText) {

eval(responseText);

//OR

var script = document.createElement('script');

script.text = responseText;

//Append element to DOM

//THEN

callback_method();

});

Edit: Or, should I insert a script element with the src and async set, and listen to the script element's readystatechange event?

如果您这样做,浏览器的加载符号将会显示。如果您通过 XHR 加载它,用户将不会注意到任何东西。

关于javascript - 异步嵌入脚本后是否需要使用 window.onReady()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5688714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com