- 943 名前:think ◆MM0nnAOCiQ mailto:sage [2009/02/01(日) 21:51:29 ID:vzBROa/z0]
- >>942
ちょっと言葉が足りませんでしたので、補足します。 >939の検証の意図は「ブラウザがどのscriptタグを開始タグ、終了タグと見なしているか確認すること」にありました。 ■終了タグをケース別に見た場合 1. 「</script」を終了タグと認識するケース 「<script type='text/javascript'>...</script」がブラウザのJavaScriptを実行する部分になるので、 下記のようにタグを閉じてしまい、alert('test2'); が実行されない挙動になります。 <script type='text/javascript'> document.write('<script ' + 'type="text/javascript">alert("test1");</script' + '>'); 2. 「</script」を終了タグと認識しないケース 「<script type='text/javascript'>...</script>」がブラウザのJavaScriptを実行する部分になるので、すべてのalert()が実行されます。 ■結果 2つとも alert() が実行されたため、「2. のケース」であると判断しました。(開始タグに関しても同様に判断できます) 次にブラウザの挙動に合わせてフィルタを作り替えてみましょう、という流れです。 HTMLの仕様をみれば、</script が終了タグと見なされるはずはないのですが、 実際に動かしてみると規格外な動作をすることもあるので、念のため確認しています。 こんな説明でいいでしょうか?
|

|