欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript在XHTML中的用法詳解

 更新時(shí)間:2013年04月11日 16:36:06   作者:  
下面的代碼在HTML中是有效的,但在XHTML中則是無(wú)效的接下來(lái)為大家介紹下JavaScript在XHTML中的用法,感興趣的朋友可以參考下哈
編寫(xiě)XHTML代碼的規(guī)則要比編寫(xiě)HTML要嚴(yán)格得多,類(lèi)似下面的代碼在HTML中是有效的,但在XHTML中則是無(wú)效的。
[javascript]
復(fù)制代碼 代碼如下:

<script type="text/javascript">
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
</script>
<script type="text/javascript">
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
</script>

在HTML中,有特殊的規(guī)則用以確定<script>元素中的哪些內(nèi)容可以被解析,但這些規(guī)則在XHTML中不適用。因?yàn)樾∮谔?hào)(<)在XHTML中將被當(dāng)作開(kāi)始一個(gè)新標(biāo)簽來(lái)解析。但是作為標(biāo)簽,小于號(hào)后面不能跟空格,因此導(dǎo)致語(yǔ)法錯(cuò)誤。
解決方法有兩個(gè):一、用相應(yīng)的HTML實(shí)體(&lt;)替換代碼中所有的小于號(hào)(<);二、使用一個(gè)CData片段來(lái)包含JavaScript代碼。
方法一相應(yīng)代碼:
[javascript]
復(fù)制代碼 代碼如下:

<script type="text/javascript">
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
</script>
<script type="text/javascript">
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
</script>

方法二相應(yīng)代碼:
[javascript]
復(fù)制代碼 代碼如下:

<script type="text/javascript"><![CDATA[
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
]]></script>
<script type="text/javascript"><![CDATA[
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
]]></script>

方法一雖然可以讓代碼在XHTML中正常運(yùn)行,但卻導(dǎo)致代碼不好理解了;而方法二在兼容XHTML的瀏覽器中可以解決問(wèn)題。但不少瀏覽器并不兼容XHTML,因而不支持CData片段。所以再使用JavaScript注釋將CData標(biāo)記注釋掉。
相應(yīng)代碼:
[html]
復(fù)制代碼 代碼如下:

<script type="text/javascript">
//<![CDATA[
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
//]]>
</script>
<script type="text/javascript">
//<![CDATA[
function compare(a, b)
{
if(a < b)
{
alert("a is less then b");
}
else if(a > b)
{
alert("a is greater then b");
}
else
{
alert("a is equal to b");
}
}
//]]>
</script>

這種格式在所有現(xiàn)代瀏覽器中都可以正常使用。
附:不推薦使用的語(yǔ)法
[javascript]
復(fù)制代碼 代碼如下:

<script><!--
function sayHi(){
alert("Hi!);
}
//--></script>
<script><!--
function sayHi(){
alert("Hi!);
}
//--></script>

像上面這樣把JavaScript代碼包含在一個(gè)HTML注釋中可以讓不支持<script>元素的瀏覽器隱藏嵌入的JavaScript代碼,即忽略<script>標(biāo)簽中的內(nèi)容,而那些支持JavaScript的瀏覽器在遇到這種情況時(shí),則必須進(jìn)一步確認(rèn)其中是否包含需要解析的JavaScript代碼。

雖然這種注釋格式得到了所有瀏覽器的認(rèn)可,也能被正確的解釋,但由于所有瀏覽器都已經(jīng)支持JavaScript,因此也就沒(méi)有必要再使用這種格式了。

相關(guān)文章

  • JSONObject用法詳解

    JSONObject用法詳解

    本文詳細(xì)講解了JSONObject的用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-12-12
  • location.href用法總結(jié)(最主要的)

    location.href用法總結(jié)(最主要的)

    location.href在使用中很是頻繁,接下來(lái)為大家詳細(xì)介紹下location.href主要的使用方法有哪些,感興趣的朋友可以參考下
    2013-12-12
  • Javascript開(kāi)發(fā)之三數(shù)組對(duì)象實(shí)例介紹

    Javascript開(kāi)發(fā)之三數(shù)組對(duì)象實(shí)例介紹

    Javascript開(kāi)發(fā)之三組數(shù)對(duì)象詳細(xì)介紹,需要的朋友可以參考下
    2012-11-11
  • 淺析JS原型繼承與類(lèi)的繼承

    淺析JS原型繼承與類(lèi)的繼承

    下面小編就為大家?guī)?lái)一篇淺析JS原型繼承與類(lèi)的繼承。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-04-04
  • JavaScript基礎(chǔ)之this詳解

    JavaScript基礎(chǔ)之this詳解

    JavaScript中函數(shù)的this對(duì)象是函數(shù)在執(zhí)行時(shí)所處的作用域(例:當(dāng)在網(wǎng)頁(yè)的全局作用域中調(diào)用函數(shù)時(shí),this對(duì)象引用的就是window)。
    2017-06-06
  • js 編寫(xiě)規(guī)范

    js 編寫(xiě)規(guī)范

    js輸寫(xiě)最好還是可以面向?qū)ο蠓绞?用類(lèi)方向進(jìn)行包裝 js輸寫(xiě)兩種方式 閉包 原型
    2010-03-03
  • js自帶函數(shù)備忘 數(shù)組

    js自帶函數(shù)備忘 數(shù)組

    js自帶函數(shù)備忘 數(shù)組...
    2006-12-12
  • Javascript this 關(guān)鍵字 詳解

    Javascript this 關(guān)鍵字 詳解

    Javascript是一種很靈活的語(yǔ)言, 而This關(guān)鍵字又是靈活中的靈活, 但是因?yàn)樗撵`活, 也注定了它的難用.以前我用this的時(shí)候, 都會(huì)覺(jué)得不踏實(shí), 老是擔(dān)心它不知道怎么地就會(huì)指到另外的什么地方.其實(shí), 這都是因?yàn)? 我們對(duì)它的不了解.
    2014-10-10
  • 微信小程序wx:for循環(huán)的實(shí)例詳解

    微信小程序wx:for循環(huán)的實(shí)例詳解

    在組件上使用 wx:for 控制屬性綁定一個(gè)數(shù)組,即可使用數(shù)組中各項(xiàng)的數(shù)據(jù)重復(fù)渲染該組件。這篇文章主要介紹了微信小程序wx:for循環(huán)的相關(guān)知識(shí),需要的朋友可以參考下
    2018-10-10
  • JavaScript lastIndexOf方法入門(mén)實(shí)例(計(jì)算指定字符在字符串中最后一次出現(xiàn)的位置)

    JavaScript lastIndexOf方法入門(mén)實(shí)例(計(jì)算指定字符在字符串中最后一次出現(xiàn)的位置)

    這篇文章主要介紹了JavaScript字符串對(duì)象的lastIndexOf方法入門(mén)實(shí)例,lastIndexOf方法用于計(jì)算指定字符在字符串中最后一次出現(xiàn)的位置,需要的朋友可以參考下
    2014-10-10

最新評(píng)論