繁華開(kāi)滿天機(jī)
2019-07-27 14:28:55
JavaScript字符串中的腳本標(biāo)記我遇到一個(gè)問(wèn)題,在JavaScript中引用的字符串中有一個(gè)結(jié)束腳本標(biāo)記,它正在查殺腳本。我認(rèn)為這不是預(yù)期的行為。這方面的一個(gè)例子可以在這里看到:http://jsbin.com/oqepe/edit我感興趣的測(cè)試用例瀏覽器:Mozilla / 5.0(X11; U; Linux i686; en-US; rv:1.9.1.4)Gecko / 20091028 Ubuntu / 9.10(karmic)Firefox / 3.5.4。
3 回答

守候你守候我
TA貢獻(xiàn)1802條經(jīng)驗(yàn) 獲得超10個(gè)贊
怎么了?
瀏覽器HTML解析器將</script>
在字符串中看到它,并將其解釋為腳本元素的結(jié)尾。
看看這個(gè)例子的語(yǔ)法著色:
<script>var test = 'foo... </script> bar.....';</script>
請(qǐng)注意,單詞bar被視為腳本元素之外的文本內(nèi)容...
常用的技術(shù)是使用連接運(yùn)算符:
var test = '...... </scr'+'ipt>......';

蠱毒傳說(shuō)
TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超3個(gè)贊
不會(huì).XML解析器將</script>
視為“腳本結(jié)束”和</notscript>
良好形式錯(cuò)誤。HTML解析器將</anything>
視為“腳本結(jié)束”,然后將其</notscript>
視為“處理未定義的錯(cuò)誤”。只有一個(gè)標(biāo)簽湯解析器(可能還有一個(gè)HTML5解析器,我還沒(méi)有仔細(xì)閱讀草案以確定)將</notscript>
作為腳本的一部分
添加回答
舉報(bào)
0/150
提交
取消