</script>
जावास्क्रिप्ट स्ट्रिंग litteral अंदर एक बंद टैग के रूप में HTML पार्सर द्वारा व्याख्या की है, अनपेक्षित व्यवहार (के कारण JSFiddle पर उदाहरण देखें )।
इससे बचने के लिए, आप अपनी जावास्क्रिप्ट को टिप्पणियों के बीच रख सकते हैं (कोडिंग की यह शैली आम बात थी, जब जावास्क्रिप्ट ब्राउज़रों के बीच खराब रूप से समर्थित था)। यह काम करेगा ( JSFiddle में उदाहरण देखें ):
<script type="text/javascript">
<!--
if (jQuery === undefined) {
document.write('<script type="text/javascript" src="http://z-ecx.images-amazon.com/images/G/01/javascripts/lib/jquery/jquery-1.2.6.pack._V265113567_.js"></script>');
}
// -->
</script>
... लेकिन ईमानदार होने के लिए, document.write
कुछ ऐसा नहीं है जिसका मैं सबसे अच्छा अभ्यास मानता हूं। डोम को सीधे हेरफेर क्यों नहीं?
<script type="text/javascript">
<!--
if (jQuery === undefined) {
var script = document.createElement('script');
script.setAttribute('type', 'text/javascript');
script.setAttribute('src', 'http://z-ecx.images-amazon.com/images/G/01/javascripts/lib/jquery/jquery-1.2.6.pack._V265113567_.js');
document.body.appendChild(script);
}
// -->
</script>
\/
के लिए एक वैध भागने का क्रम है/
, तो क्यों न केवल उन स्ट्रिंग शाब्दिक के बजाय का उपयोग करें<
? जैसेdocument.write('<script src=foo.js><\/script>');
। इसके अलावा,</script>
केवल चरित्र अनुक्रम नहीं है जो किसी<script>
तत्व को बंद कर सकता है । यहाँ कुछ और जानकारी: mathiasbynens.be/notes/etago