1

属性は、HTML5のasync最近の機能であり
、ダウンロードされたファイルが呼び出さdocument.writeれず、ページの処理中にダウンロードできることを示します。

しかし、スクリプトを非同期的に読み込む別の方法があり、古いブラウザとの下位互換性 があると聞いたことがあります。

asyncJavaScript でスクリプト DOM 要素を動的に作成し、それをページに追加することで、属性によって実現される動作を再現できることがわかりました。

例 :

var script = document.createElement('script');
script.src = 'http://camerastork.com/widget.js?product=1234';
script.async = true
...

それで、それがサポートしていない古いブラウザ用である場合、どうすればプロパティasyncを使用できるのでしょうか。.async

4

1 に答える 1

3

属性/プロパティは、asyncあなたが思っているよりも古いものです (少なくとも一部のブラウザ系統では)。しかし、これが機能する本当の理由は、大多数のブラウザーが、 /をscript介して DOM に追加されたすべての要素を常に「非同期」として (を必要とせずに) 扱ってきたからです。数年前、それらを同期的に処理した (スクリプトがフェッチされて実行されるまで、次のコード行を実行しなかった) ブラウザは数個しかなく、その後、問題のブラウザは動作を更新しました。createElementappendChildscript.async = true

于 2013-11-11T08:09:22.223 に答える