哪些浏览器支持<script async =“async”>?</script>

时间:2009-12-02 16:27:13

标签: javascript html performance asynchronous google-analytics

2009年12月1日,Google宣布支持asynchronous Google Analytics tracking

使用<script>标记的async指令实现异步跟踪。

哪些浏览器支持异步指令(<script async="async" />)以及哪个版本支持?

6 个答案:

答案 0 :(得分:161)

谷歌指定的异步支持是通过两部分实现的:

  • 使用页面上的脚本(该脚本由google提供)写出&lt; script&gt;标记到DOM。

  • 该脚本具有async =“true”属性,以向兼容的浏览器发出信号,表示它可以继续呈现该页面。

第一部分适用于不支持<script async..标记的浏览器,允许它们使用“hack”加载异步(虽然非常可靠),并且还允许在不等待ga.js的情况下呈现页面被检索。

第二部分仅影响了解async html属性

的兼容浏览器
  • FF 3.6+
  • FF for Android All Versions
  • IE 10+(从预览2开始)
  • Chrome 8+
  • Chrome For Android所有版本
  • Safari 5.0 +
  • iOS Safari 5.0 +
  • Android Browser 3.0+(蜂窝状)
  • Opera 15.0 +
  • Opera Mobile 16.0 +
  • Opera Mini (自8.0起)

指定异步的“html5正确”方式是使用<script async src="...",而不是<script async="true"。但是,最初浏览器不支持此语法,也不支持在引用的元素上设置脚本属性。如果需要,列表会更改:

  • FF 4 +
  • IE 10+(预览2及以上)
  • Chrome 12 +
  • Chrome For Android 32 +
  • Safari 5.1 +
  • 没有Android版本

答案 1 :(得分:60)

这个问题有两部分,真的。

  1. 问:哪些浏览器支持标记中脚本标记的“async”属性?

    答:IE10p2 +,Chrome 11 +,Safari 5 +,Firefox 3.6 +

  2. 问:哪些浏览器支持在动态创建的脚本元素上为JavaScript中的“async”属性定义行为的新规范?

    答:IE10p2 +,Chrome 12 +,Safari 5.1 +,Firefox 4 +

  3. 至于Opera,他们非常接近发布支持两种类型异步的版本。我一直在和他们密切合作,很快就会出来(我希望!)。

    有关ordered-async(aka,“async = false”)的更多信息,请访问:http://wiki.whatwg.org/wiki/Dynamic_Script_Execution_Order

    另外,要测试浏览器是否支持新的动态异步属性行为:http://test.getify.com/test-async/

答案 2 :(得分:25)

支持async参数的浏览器版本的完整列表可用here

答案 3 :(得分:10)

从您引用的页面:

http://googlecode.blogspot.com/2009/12/google-analytics-launches-asynchronous.html

  

Firefox 3.6是第一款正式为这项新功能提供支持的浏览器。如果你很好奇,这里有更多有关官方HTML5 async specification的详细信息。

答案 4 :(得分:1)

所有最新版本的主流浏览器目前都支持async。它已在大多数浏览器上支持了几年。

您可以在MDN网站上跟踪哪些浏览器支持异步(和延迟):
https://developer.mozilla.org/en-US/docs/HTML/Element/script

答案 5 :(得分:0)

刚看了一下使用谷歌分析的这个页面的DOM(document.scripts [1] .attributes)。 我可以告诉你谷歌正在使用async =“”。

[type="text/javascript", async="", src="http://www.google-analytics.com/ga.js"]