Html5异步属性与js异步属性有什么区别。
<script src="http://www.google-analytics.com/ga.js" async>
和
(function() {
var ga = document.createElement('script');
ga.type = 'text/javascript';
ga.async = true;
ga.src = 'http://www.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0];
s.parentNode.insertBefore(ga, s);
})();
他们可以互换吗
答案 0 :(得分:3)
不,它们不可互换。
带有async属性的脚本标记在下载之后和window.onload
事件之前的第一次机会执行。所以你不知道何时该脚本执行。
另一方面,javascript文件中加载的脚本可以随时执行(window.onload
事件之后或之前)。
部分链接:http://davidwalsh.name/html5-async,https://developer.mozilla.org/en-US/docs/Web/HTML/Element/script。
修改强>
在Salman A中说ga.async = true;
。解析器省略了答案(https://stackoverflow.com/a/14666847/2044286)。
答案 1 :(得分:0)
JavaScript正在创建您正在谈论的HTML元素。在JavaScript中,属性本身没有意义,在这种情况下,它只是一个值为true
的属性。
当浏览器读取HTML时,该值具有意义。