2016-08-06 12 views
0

こんにちは私は、HTMLとJavascriptの解析順序に関する質問があります。希望HTMLとJavascriptの解析順序

  1. 最初のウェブページ上に表示されるでしょう「第1項」、
  2. は「最初のスクリプトブロック」の通知を受信
  3. 「段落2」:以下のコードでは、その意味を成しているようです"2番目のスクリプトブロック"

のための通知を受信し、その..に

<html> 
<body bgColor = "WHITE"> 
    <p>Paragraph 1</p> 
<script type = "text/javascript"> 
    // Script block 1 
    alert("First Script Block"); 
</script> 
    <p>Paragraph 2</p> 
<script type = "text/javascript"> 
    // Script block 2 
    document.bgColor = "Red"; 
    alert("Second Script Block"); 
</script> 
<p>Paragraph 3</p> 
</body> 
</html> 
Webページ
  • に表示

    しかし実際にレンダリングすると、アラートが最初に表示され、アラートメッセージをクリックした後に「パラグラフ1」が表示されます。

    なぜこのような場合に誰かが私を助けることができますか?

    ありがとう、

  • +0

    これは実装固有のものだと思います。あなたはbody.onLoad()のようなものを使うべきです。 –

    +0

    私は@JonathonReinhartに同意します.jsは、ページ全体が読み込まれたときに実行されるブラウザがあり、読み込んだときに実行するブラウザ(おそらく)があります。ロードされた.. –

    +0

    あなたはおそらく、そのブラウザの設定です。私はさらにonLoad()メソッドを見ていきます。このような遅い返信には申し訳ありませんが、率直に言って、私がここに来て以来、私は何も受け取らないと思っていました。あなたの親切なコメントをありがとう。 – peakersky

    答えて

    0

    頭の空のタグを追加してください。私のクロームブラウザで修正されました。

    <html> 
    <head> 
    </head> 
    <body bgColor = "WHITE"> 
        <p>Paragraph 1</p> 
    <script type = "text/javascript"> 
        // Script block 1 
        alert("First Script Block"); 
    </script> 
        <p>Paragraph 2</p> 
    <script type = "text/javascript"> 
        // Script block 2 
        document.bgColor = "Red"; 
        alert("Second Script Block"); 
    </script> 
    <p>Paragraph 3</p> 
    </body> 
    </html> 
    
    +0

    そして、なぜそれが順調に変化する*信頼できる*理由であるべきですか? @JonathanReinhartが説明しているように、この動作がブラウザ固有のものである場合、すべてのブラウザで治療の対象となるヘッドタグを追加するという先験的な理由はありません。それが起こる例は、証明ではありません。 –

    +0

    はい、私は私のクロームブラウザで試してみました。 – peakersky