Ang*_*gas 5 html javascript dom asynchronous callback
我想知道是否存在一种方便的方法来检查脚本(在执行时)是否已异步加载。
例如脚本标签:
<script async type="text/javascript" src="js/async.js"></script>
Run Code Online (Sandbox Code Playgroud)
脚本async.js:
if (_condition_to_check_if_this_has_been_loaded_async) { console.log("async: true") }
Run Code Online (Sandbox Code Playgroud)
除非您想要IE
兼容性,否则此问题的正确答案是使用鲜为人知但广泛支持的document.currentScript
属性。
此属性返回HTMLScriptElement
当前正在执行的脚本的 的(如果脚本不在标记中/是回调或类似的,则返回任何内容),它告诉您它是否具有 /async
属性defer
等。
MDN 示例甚至引用了这个确切的用例:
if (document.currentScript.async) {
console.log("Executing asynchronously");
} else {
console.log("Executing synchronously");
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6244 次 |
最近记录: |