2012-10-25 21 views
17

body内のdiv内にscriptタグを置くことについて悪い点はありますか?divの中にscriptタグを置くことは悪いですか?

div内でjavascriptコードをリロードするためにdivを動的に更新しています。心配する問題はありますか?


編集

@Bergiは、コードを見ることを主張したよう。ここにあります(下記参照)。このdiv(プレゼンテーションHTML要素を含むdiv)はAJAXを介して更新されます。このscriptの中にはdivには、生データを含むページ上に新しく読み込まれたHTML要素の処理を行うマップが含まれています。

 <div> 
      <script type="text/javascript"> 
       var namesMap = <dynamic string from server here>; 
       var addressesMap = <dynamic string from server here>; 
      </script> 
     </div> 
+0

どうすればよいですか? divがロードされた直後にこのスクリプトを実行する場合は、そのスクリプトをloadイベントにアタッチすることができます。 divを動的に更新している場合(DOMが既にロードされていることを示唆しています)、divにスクリプトを置くことは、どこにでも置くのと同じ効果があります。 –

+0

"* divを更新してJavaScriptコードをリロードする*"は悪い練習のように聞こえる、はい。一般的に、身体の「

26

<script>タグは、文書の本文のどこにでも配置できます。 hereから

SCRIPT要素は、文書内のスクリプトを配置します。この要素は、HTML文書のHEADまたはBODYに何度も現れることがあります。

ただし、<script>タグが発生するたびに、スクリプトがロードされて実行されるまでコードの解析が一時停止されます。

1

それほど悪くはありません。ほとんどのウィジェットはこのように動作します。それでも有効なHTMLです。

ページにAdSenseユニットを埋め込みたい場合は、それを行う必要があります。 Amazonウィジェットと同じ。つまり、大部分のウェブサイトにはdiv内にscriptタグがあります。

2

<script></script>タグを<head></head>に配置することをおすすめします。しかし、最近の議論では、<body></body>タグの末尾にタグを付けるかどうか、直前にページをより速くするかどうかが示されています。

<script></script>をHTML文書の<head></head>セクションに配置することをお勧めします。さらに、内部をDIVにするのは良い方法ではありません。

文書の構造を整理してより良い回答を得るための例を投稿できます。

要約すると、何をしているかに問題はありません。しかし、より組織化された方法が私の提案です。

+0

タグを '<'でエスケープしたり、バックスティック( '\' ')でコードスニペットとして囲む必要があります – Bergi

0

スクリプトでは<DIV>がまだ動作しています。 しかし、あなたのレイアウトにはいくらかの悩みがあります。 ベストソリューション:スクリプトを<body>または<head>に配置する:D

関連する問題