2010-11-18 20 views
7

私はインラインのJavascriptを使用しています。通常、WordPressのテーマで作成しています。私は、数ヶ月前まで//<![CDATA[ ... //]]>にインラインJavaScriptをラップすることについて聞いていなかったので、私はこの能力をかなりのレベルで数年間行ってきました。CDATAは本当に必要ですか?

私は周りを見つめて、彼らはJavascriptが別の方法で検証しないので、人々がこれを使用すると聞いています。厳密な1.0 xHTML doctypeを使用しています。マークアップの検証に問題はありませんでした。それはjqueryを使用しているか、通常はプラグインをアクティブにするコードが数行しかないためですか?または、w3バリデーターはこの点で寛大であるか?これらのCDATAマーキングを使用しない場合、機能的な影響の証拠はありますか?

+0

は、例えば、私はいくつかのパーサは上トリップかもしれないと思う検証するため、このような単純なものは無効となり、小なりとJavaScriptでサイン(< and >)より大コードはCDATAセクションにありません。 –

+2

これはhttp://stackoverflow.com/questions/66837/when-is-a-cdata-section-necessary-within-a-script-tagの複製であるようです。そこにいくつかの良い答えがあります。 –

+0

@Gintautas - parsers *は、とりわけ、それらの上を移動すべきです。ジョストの答えはいいです。 – Quentin

答えて

0

あなたはXHTML Strictに準拠させるために使用することを意図していると思います。それ以外の場合、JavaScriptは有効なXMLではありません。

4

XHTML文書を有効にするには、今日は必須です。例えばCDATAとJavaScriptで<p>タグのそれは

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> 
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"> 
<head> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
    <title>foo</title> 
    <script type="text/javascript"> 
    alert("<p>Hallo</p>"); 
    </script> 
</head> 
<body> 
</body> 
</html> 
+1

ああ、これはインラインスクリプト自体の内容で、ページが検証されているかどうかを知ることができます。私はいくつかのプラグインを呼び出すだけであっても、外部から私のものにリンクを張るつもりだと思います。迅速な返信ありがとう(うわー!) – Daniel

関連する問題