【发布时间】:2018-11-24 05:56:33
【问题描述】:
对于动态加载的脚本,我们可以使用async属性异步加载脚本吗?
【问题讨论】:
-
您能否详细说明
script loaded dynamically的含义? -
是的。当用于动态添加到 DOM 的脚本时,“Async”属性会异步加载脚本
对于动态加载的脚本,我们可以使用async属性异步加载脚本吗?
【问题讨论】:
script loaded dynamically 的含义?
script loaded dynamically,如果您的意思是向页面动态添加 javascript 代码,那么答案是 否。
async 属性只能用于加载通过src 属性中指定的 URL 引用的外部脚本。
async 属性仅适用于外部脚本(并且仅应在存在 src 属性时使用)
例如,您只能异步加载这样的脚本
<script src="external-file.js" async></script>
【讨论】:
这是一个有趣的观点。
这里是一个例子,一些类似的 StackOverflow 问题,以及 jQuery 文档链接 用于 Async 属性的使用
例子:
<!DOCTYPE html>
<html>
<head>
<title>Async Test Attribute</title>
</head>
<body>
<script src="async_demo.js" async></script>
<h2>Welcome to Demo!</h2>
<script>
console.log('HELLO NON-async');
</script>
</body>
</html>
async_demo.js
console.log('HELLO Async');
以上代码截图:https://hareen-nipl.tinytake.com/sf/MzEwNzYzOV85MzEzNTgz
异步 jQuery : http://forum.jquery.com/topic/jquery-ajax-async-vs-html5-script-async
W3School 文档:https://www.w3schools.com/tags/att_script_async.asp
类似的 StackOverflow 问题
Add defer or async attribute to dynamically generated script tags via javascript
Is the "async" attribute/property useful if a script is dynamically added to the DOM?
如果您对此有任何疑问,请在下方评论。
【讨论】: