2012年03月12日
川俣晶の縁側ソフトウェア技術雑記total 4170 count

JavaScript研究・動的に追加したScriptタグに記述されたスクリプトはいつ実行されるか

Written By: 川俣 晶連絡先

default.htm §

<!DOCTYPE html>

<html>

<head id="head1">

    <title></title>

    <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>

    <script type="text/javascript" src="js1.js"></script>

</head>

<body>

</body>

</html>

js1.js §

$(document).ready(function () {

    alert("1");

    var elem = document.createElement("script");

    alert("2");

    elem.setAttribute("src", "js2.js");

    alert("3");

    $("#head1").append(elem);

    alert("4");

});

js2.js §

alert("in js2");

結果 §

 IE9, Safari, Firefoxは、ローカルのファイルシステムで実行すると以下の順。

  • 1,2,3,in js2,4

 ところが、Chromeだけ"in js2"を飛ばしてしまうのです。

 それじゃjsonpで困るだろうと思ってWebサーバに配置してから実行するとchromeの動作も他の同じになりました。

まとめ §

 というわけで、実行されるのはcreateElementしたときでも、setAttributeでURLを指定した時でもなく、ツリーにアペンドされたときのようですね。

Facebook

キーワード【 川俣晶の縁側ソフトウェア技術雑記
【技術雑記】の次のコンテンツ
2012年
03月
23日
WipseはWindows Azure関係の業界の普及団体
3days 0 count
total 3817 count
【技術雑記】の前のコンテンツ
2012年
03月
09日
迷惑ブラウザは誰だ2012大賞
3days 0 count
total 3743 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

https://mag.autumn.org/tb.aspx/20120312173525
サイトの表紙【技術雑記】の表紙【技術雑記】のコンテンツ全リスト 【技術雑記】の入手全リスト 【技術雑記】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.