在JavaScript中對文字編輯也是經常,通常標簽不復雜性況下,我們也可以直接對標簽內的容進行讀取和修改操作,介于兼容性不是很理想前提下,我們先來了解下相關的方法及其他瀏覽器中替代的方法,結合實例讓大家快掌握及投入到實際工作中。
? ? ? ?1.innerText屬性
通過innertText屬性可以操作元素中包含的所有文本內容,無論文本位于子文檔樹中的什么位置。在通過innerText讀取值時,它會按照由淺入深的順序,將子文檔樹中的所有文本拼接起來。以下面的HTML代碼為例:
? ? ? ?
This is aparagraph with a list following it.
? ? ? ?
- ltem l
- ltem 2
- ltem 3
? ? ? ?
? ? ? ?
? ? ? ?
? ? ? ?
? ? ? ?對于這個例子中的
元素而言,其innerText屬性會返回下列字符串:
? ? ? ?This is a paragraph with a list following it.
? ? ? ?Item l
? ? ? ?Item 2
? ? ? ?Item 3
? ? ? ?由于不同瀏覽器處理空白符的方式不同,因此輸出的文本可能會也可能不會包含原始HTML代碼中的縮進。
使用innerText屬性設置這個
? ? ? ?設置innerText永遠只會生成當前節點的一個子文本節點,而為了確保只生成一個子文本節點, 就必須要對文本進行HTML編碼。此外,還可利用innerText屬性過濾掉HTML標簽。方法是將 innerText設置為等于innerText,這樣就可以去掉所有HTML標簽,如下所示:
? ? ? ?div.innerText=div.innerText:
? ? ? ?執行這行代碼的結果就是用原來的文本替換容器元素中的所有內容。 ? ? ? ?在此,南昌網站制作公司百恒網絡開發工程師提示大家IE、Safari、Opera和Chrome支持innerText屬性。Firefox雖然不支持innerText,但支持作用類似的textContent屬性。textContent是DOM3級規定的一個屬性,而且也得到了Safari、Opera 和Chrome的支持。為了確保跨瀏覽器兼容,有必要像下面這樣通過函數來檢測可以使用哪個屬性:
function getInnerText(element){
? ? ? ?return ( typeof element.textContent=="string") ?
? ? ? ? ? ? ? element.textContent : element.innerText:
? ? ? ?}
function setInnerText(element, text){
? ? ? ?if (typeof element.textContent== "string"){
? ? ? ? ? ? ? element.textContent=text:
? ? ? ?} else {
? ? ? ? ? ? ? element.innerText=text:
? ? ? ?}
}
? ? ? ?這兩個函數都接受一個元素,然后檢查這個元素是不是有textContent屬性。如果有,那么type of element.textContent應該是"string";如果沒有,那么這兩個函數就會改為使用innerText,可以像下面這樣調用這兩個函數:
? ? ? ?setInnerText( div, "Hello worldl“);
? ? ? ?alert( getinnerText (div)); //"Hello world!"
使用這兩個函數可以確保在不同的瀏覽器中使用正確的屬性。
2.innerHTML屬性
? ? ? ?innerHTML與innerText在很多方面都很相似。在讀取信息時,innerHTML返回當前元素所有子節點的HTML表現,包括元素、注釋及文本節點。在寫入信息時,innerHTML會按照指定的值創建新的DOM子樹,并以該子樹替換當前元素的所有子節點。提到innerHTML與innerText之間最 主要的區別,無非就是innerHTML處理的是HTML字符串,而innerText處理的是普通文本字符串。
以下面的HTML代碼為例:
? ? ? ?
< /div>
這里面
? ? ? ?This is a paragraph with a list following it.
? ? ? ?Item l
? ? ? ?Item 2
? ? ? ?Item 3
? ? ? ?由于不同瀏覽器處理空白符的方式不同,因此輸出的文本可能會也可能不會包含原始HTML代碼中的縮進。
使用innerText屬性設置這個
元素的內容,則只需一行代碼:
? ? ? ?div.innerText="Hello world!;
? ? ? ?執行這行代碼后,頁面的HTML代碼就會變成如下所示:
? ? ? ?
? ? ? ?可見,設置innerText屬性移除了先前存在的所有子節點,完全改變了DOM子樹。此外,通過設置innerText屬性還可以對所有出現在文本中的HTML語法字符(小于號、大干號、引號及和號)進行編碼。例如,下面的這行代碼:
? ? ? ?div.innerText="Hello&welcome, "reader"!";
? ? ? ?運行之后的結果如下:
? ? ? ?< div id=‘’content">Hello & welcome,<b>" reader"!< /b>
? ? ? ?div.innerText="Hello world!;
? ? ? ?執行這行代碼后,頁面的HTML代碼就會變成如下所示:
? ? ? ?
Hello world!
? ? ? ?可見,設置innerText屬性移除了先前存在的所有子節點,完全改變了DOM子樹。此外,通過設置innerText屬性還可以對所有出現在文本中的HTML語法字符(小于號、大干號、引號及和號)進行編碼。例如,下面的這行代碼:
? ? ? ?div.innerText="Hello&welcome, "reader"!";
? ? ? ?運行之后的結果如下:
? ? ? ?< div id=‘’content">Hello & welcome,<b>" reader"!< /b>
? ? ? ?設置innerText永遠只會生成當前節點的一個子文本節點,而為了確保只生成一個子文本節點, 就必須要對文本進行HTML編碼。此外,還可利用innerText屬性過濾掉HTML標簽。方法是將 innerText設置為等于innerText,這樣就可以去掉所有HTML標簽,如下所示:
? ? ? ?div.innerText=div.innerText:
? ? ? ?執行這行代碼的結果就是用原來的文本替換容器元素中的所有內容。 ? ? ? ?在此,南昌網站制作公司百恒網絡開發工程師提示大家IE、Safari、Opera和Chrome支持innerText屬性。Firefox雖然不支持innerText,但支持作用類似的textContent屬性。textContent是DOM3級規定的一個屬性,而且也得到了Safari、Opera 和Chrome的支持。為了確保跨瀏覽器兼容,有必要像下面這樣通過函數來檢測可以使用哪個屬性:
function getInnerText(element){
? ? ? ?return ( typeof element.textContent=="string") ?
? ? ? ? ? ? ? element.textContent : element.innerText:
? ? ? ?}
function setInnerText(element, text){
? ? ? ?if (typeof element.textContent== "string"){
? ? ? ? ? ? ? element.textContent=text:
? ? ? ?} else {
? ? ? ? ? ? ? element.innerText=text:
? ? ? ?}
}
? ? ? ?這兩個函數都接受一個元素,然后檢查這個元素是不是有textContent屬性。如果有,那么type of element.textContent應該是"string";如果沒有,那么這兩個函數就會改為使用innerText,可以像下面這樣調用這兩個函數:
? ? ? ?setInnerText( div, "Hello worldl“);
? ? ? ?alert( getinnerText (div)); //"Hello world!"
使用這兩個函數可以確保在不同的瀏覽器中使用正確的屬性。
2.innerHTML屬性
? ? ? ?innerHTML與innerText在很多方面都很相似。在讀取信息時,innerHTML返回當前元素所有子節點的HTML表現,包括元素、注釋及文本節點。在寫入信息時,innerHTML會按照指定的值創建新的DOM子樹,并以該子樹替換當前元素的所有子節點。提到innerHTML與innerText之間最 主要的區別,無非就是innerHTML處理的是HTML字符串,而innerText處理的是普通文本字符串。
以下面的HTML代碼為例:
This is aparagraph with a list following it.
? ? ? ?
- ltem l
- ltem 2
- ltem 3
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ? ? ? ?
? ? ? ?
< /div>
這里面
元素的innerHTML屬性將返回下列字符串:
? ? ? ?在不同瀏覽器中,innerHTML返回的文本可能會有所不同。IE和Opera常常把所有標簽轉換為大寫,而Safari、Chrome和Firefox則以文檔中指定的形式返回HTML-包括空格和縮進。不要指望所有瀏覽器都會返回沒有絲毫差別的innerHTML值。
? ? ? ?在寫入信息時,innerHTML會將給定的字符串解析為DOM子樹,并用這個子樹替換所有的子節 點。由于賦給innerHTML的字符串會被當作HTML,因此其中包含的所有標簽都會按照瀏覽器處理 HTML的標準方式,被轉換成對應的元素(同樣,這個過程也會因瀏覽器而異)。如果像下面這樣, 只設置簡單的文本,那么結果就如同設置innerText -樣:
? ? ? ?div.innerHTML="Hello world!":
? ? ? ?如果為innerHTML設置的字符串中包含HTML代碼,結果可能就會大不一樣了。區別就在于innerText會轉義HTML語法字符,而innerHTML會解析它們。來看下面的例子:
? ? ? ?div.innerHTML="Hello&welcome, \"reader"!";
? ? ? ?執行這行代碼之后的結果是:
? ? ? ?
? ? ? ?在設置完innerHTML之后,馬上就可以像訪問文檔中的其他節點一樣訪問新生成的節點。
? ? ? ?設置innerHTML會導致瀏覽器將HTML字符串解析為對應的DOM樹。換句話說,設置完innerHTML之后再讀取它,將會得到一個差別很大的字符串。這個字符串不再是原始的
HTML代碼,而是根據原始HTML字符串創建的DOM子樹經過序列化之后的結果。
? ? ? ?innerHTML也有一些限制。首先,在多數瀏覽器中,通過innerHTML插入的
蜜臂av日日欢夜夜爽一区_成人一区二区三区在线观看
_日韩国产欧美三级_成人福利视频网站_石原莉奈在线亚洲二区_国产一区二区三区四区五区美女_国产一区二区三区av电影
_91麻豆福利精品推荐_日韩精品1区2区3区_93久久精品日日躁夜夜躁欧美
国产成人在线免费|
国产传媒一区在线|
精品亚洲porn|
www.亚洲人|
毛片基地黄久久久久久天堂|
国产精品亚洲人在线观看|
av在线这里只有精品|
久久www免费人成看片高清|
丁香六月综合激情|
久久成人免费日本黄色|
91丨porny丨蝌蚪视频|
国产一区三区三区|
日本大胆欧美人术艺术动态|
成人午夜看片网址|
韩国av一区二区三区|
天堂一区二区在线免费观看|
国产a视频精品免费观看|
蜜桃精品视频在线观看|
99re热这里只有精品免费视频|
久久电影网站中文字幕|
97精品超碰一区二区三区|
国产盗摄女厕一区二区三区|
蜜臀99久久精品久久久久久软件|
9人人澡人人爽人人精品|
国内精品写真在线观看|
日本欧美久久久久免费播放网|
不卡视频一二三四|
成人高清视频免费观看|
国产精品一区二区x88av|
久久精品国产精品青草|
欧美aaa在线|
肉肉av福利一精品导航|
91在线免费播放|
大美女一区二区三区|
国产高清无密码一区二区三区|
久久福利视频一区二区|
美女视频黄免费的久久|
蜜臀av性久久久久蜜臀aⅴ流畅|
日韩和欧美一区二区三区|
丝瓜av网站精品一区二区|
av一区二区三区|
91性感美女视频|
91污片在线观看|
日韩不卡一区二区三区|
日韩电影免费在线|
久久91精品国产91久久小草|
国内精品伊人久久久久av一坑
|
国产91精品久久久久久久网曝门
|
成人av中文字幕|
成人免费视频播放|
99久久婷婷国产|
日韩国产成人精品|
麻豆精品蜜桃视频网站|
久久99精品久久久久久|
国产精品77777|
成人精品鲁一区一区二区|
av在线一区二区三区|
日本美女视频一区二区|
国产一区91精品张津瑜|
成人动漫一区二区|
91蝌蚪porny|
精品一区二区三区免费毛片爱|
激情综合五月天|
成人丝袜18视频在线观看|
成人深夜在线观看|
97国产精品videossex|
麻豆高清免费国产一区|
国产乱码精品一区二区三区五月婷
|
国产91精品久久久久久久网曝门|
av中文字幕不卡|
六月丁香婷婷色狠狠久久|
国产美女av一区二区三区|
不卡一二三区首页|
国产专区欧美精品|
天堂成人免费av电影一区|
国产乱一区二区|
日本不卡在线视频|
大尺度一区二区|
蜜臀av性久久久久蜜臀aⅴ四虎
|
波多野结衣在线aⅴ中文字幕不卡|
99久久777色|
国产中文字幕精品|
91日韩一区二区三区|
国产精品系列在线观看|
青青青爽久久午夜综合久久午夜|
国产成人免费视频精品含羞草妖精|
91网站最新网址|
国产精选一区二区三区|
日韩电影在线看|
国产成人av影院|
精品无人码麻豆乱码1区2区|
91丨九色丨尤物|
风流少妇一区二区|
国产一区二三区|
麻豆国产欧美一区二区三区|
91视频观看视频|
成人一区二区三区视频|
国产老妇另类xxxxx|
另类综合日韩欧美亚洲|
日韩av电影免费观看高清完整版|
成人av在线电影|
成人在线视频首页|
国产精品亚洲专一区二区三区
|
波多野结衣91|
东方aⅴ免费观看久久av|
精品一区二区三区欧美|
美国十次了思思久久精品导航|
99精品视频免费在线观看|
成人免费毛片嘿嘿连载视频|
国产精品69久久久久水密桃
|
99久久综合精品|
粉嫩av亚洲一区二区图片|
国产精品一卡二|
韩国av一区二区|
激情综合五月婷婷|
麻豆成人久久精品二区三区红|
日韩中文字幕区一区有砖一区
|
久久精品国产免费看久久精品|
91免费视频网址|
99麻豆久久久国产精品免费|
成人国产精品免费观看|
国产成人午夜99999|
国产jizzjizz一区二区|
成人久久18免费网站麻豆|
成人污污视频在线观看|
aaa欧美色吧激情视频|
91丨porny丨户外露出|
97精品久久久午夜一区二区三区
|
91免费看片在线观看|
91亚洲精品久久久蜜桃网站|
三级一区在线视频先锋
|
caoporn国产精品|
91在线观看下载|
日本亚洲三级在线|
精油按摩中文字幕久久|
国产精品亚洲专一区二区三区|
国产精品亚洲综合一区在线观看|
粉嫩av一区二区三区粉嫩|
91女厕偷拍女厕偷拍高清|
免费观看一级特黄欧美大片|
国产综合一区二区|
成人性生交大片免费看中文|
日日夜夜免费精品|
国产毛片精品国产一区二区三区|
成人高清伦理免费影院在线观看|
日韩主播视频在线|
国产自产2019最新不卡|
yourporn久久国产精品|
看片的网站亚洲|
成人91在线观看|
精品一区二区三区香蕉蜜桃|
国产69精品久久久久毛片|
日精品一区二区|
国产成人在线视频免费播放|
日韩精品福利网|
国产一区二区在线电影|
91天堂素人约啪|
国产福利一区在线|
免费观看成人鲁鲁鲁鲁鲁视频|
国产成人h网站|
麻豆视频观看网址久久|
av一区二区三区四区|
激情五月激情综合网|
91在线看国产|
丁香激情综合国产|
国产一区在线观看麻豆|
蜜臀99久久精品久久久久久软件|
成人免费视频视频在线观看免费
|
国产高清成人在线|
久久国产剧场电影|
天堂va蜜桃一区二区三区|
懂色av一区二区在线播放|
国内一区二区在线|
麻豆国产精品777777在线|
91丨porny丨中文|
成人黄色国产精品网站大全在线免费观看
|
久久99精品国产麻豆婷婷|
91在线porny国产在线看|
首页亚洲欧美制服丝腿|
久草精品在线观看|
日本午夜精品视频在线观看
|
久久精品av麻豆的观看方式|
99精品偷自拍|
成人av午夜电影|
国产91精品一区二区麻豆亚洲|
久久99蜜桃精品|
蜜桃av一区二区在线观看|
日韩精品亚洲一区|
91色porny在线视频|
99久久免费视频.com|
成人美女视频在线观看|
国产999精品久久久久久|
国产99久久久国产精品潘金网站|
国产一区999|
国产乱人伦精品一区二区在线观看|
久久电影网站中文字幕|
精品一区二区av|
国产一区在线精品|
国产麻豆日韩欧美久久|
国产一区二区三区在线看麻豆|
精品综合免费视频观看|
九九视频精品免费|
国产一区二区精品在线观看|
国内精品自线一区二区三区视频|
精品一区二区免费看|
国产尤物一区二区|
国产精品一色哟哟哟|
国产成人欧美日韩在线电影|
成人午夜在线视频|
91视频www|
久久成人麻豆午夜电影|
国产精品996|
97久久精品人人澡人人爽|
日韩福利视频导航|
久久av资源网|
成人性生交大片免费看中文|
爽好久久久欧美精品|
麻豆久久久久久久|
国产一区二区三区香蕉|
成av人片一区二区|
日本亚洲天堂网|
国产老肥熟一区二区三区|
成人毛片在线观看|
青青草91视频|
国产69精品久久99不卡|
三级亚洲高清视频|
国产自产高清不卡|
99riav一区二区三区|
麻豆国产91在线播放|
国产91丝袜在线播放九色|
91年精品国产|
国产精品18久久久久久vr|
97久久精品人人做人人爽|
久久精品国产一区二区|
成人激情免费电影网址|
日本中文在线一区|
国产美女精品人人做人人爽|
91网站最新网址|
狠狠色综合日日|
99精品视频免费在线观看|
麻豆国产一区二区|
不卡在线视频中文字幕|
国产资源精品在线观看|
91视视频在线观看入口直接观看www|
精品一区二区免费在线观看|
99久久久久久|
国产不卡高清在线观看视频|
日韩电影一区二区三区四区|
国产精品1024|
久久国产精品无码网站|
91在线视频播放地址|
国产乱码精品1区2区3区|
日韩—二三区免费观看av|
成人一区二区三区|
国产精品综合一区二区三区|
日本中文字幕一区二区视频|
av不卡在线观看|
国产剧情在线观看一区二区|
另类中文字幕网|
91一区在线观看|
成人网页在线观看|
国产精品影视在线|
极品少妇xxxx精品少妇|
秋霞电影一区二区|
日韩中文字幕区一区有砖一区|
懂色av中文字幕一区二区三区|
99久久免费视频.com|
国产一区不卡在线|
狠狠色2019综合网|
裸体在线国模精品偷拍|
热久久国产精品|
91麻豆国产自产在线观看|
99亚偷拍自图区亚洲|
jlzzjlzz亚洲日本少妇|
国产91精品在线观看|
国产精品一卡二卡在线观看|
韩国av一区二区三区在线观看|
蜜桃传媒麻豆第一区在线观看|
日韩 欧美一区二区三区|
视频一区中文字幕|
日韩综合一区二区|
日本三级亚洲精品|
美女视频免费一区|
精品一区在线看|
国产乱国产乱300精品|
国产老妇另类xxxxx|
国产91精品久久久久久久网曝门|
国产精品一卡二卡|
成人免费视频视频|
99久久精品免费精品国产|
99久久国产免费看|
91色九色蝌蚪|
蜜臀久久99精品久久久画质超高清|
日本vs亚洲vs韩国一区三区|
美国一区二区三区在线播放
|
国产一区二区免费看|
国产精品综合一区二区|
狠狠色狠狠色综合日日91app|
麻豆成人综合网|
国产精品一区二区三区四区|
国产suv精品一区二区6|
成人精品一区二区三区四区|
91在线视频网址|
久久国产免费看|
国产精品77777|
99精品热视频|
麻豆久久久久久|
国产激情偷乱视频一区二区三区
|
日本女优在线视频一区二区
|
成+人+亚洲+综合天堂|
日韩二区三区在线观看|
激情综合色播激情啊|
成人丝袜18视频在线观看|
91丨porny丨首页|
激情亚洲综合在线|
a级精品国产片在线观看|
免费欧美在线视频|
国产成a人亚洲精|
精品影视av免费|
91视频观看免费|
日韩国产欧美在线观看|
另类小说综合欧美亚洲|
国产精品一二三在|
91玉足脚交白嫩脚丫在线播放|
精品影院一区二区久久久|
成人深夜视频在线观看|
男男成人高潮片免费网站|
国产成人精品aa毛片|
日韩主播视频在线|
国产mv日韩mv欧美|
蜜臀a∨国产成人精品|
国产成人精品1024|
久久精品国产免费看久久精品|
波多野结衣中文字幕一区二区三区
|
蜜臀av一区二区|
成人免费毛片aaaaa**|
男女激情视频一区|
成人毛片视频在线观看|
激情五月婷婷综合|
日本欧美一区二区|
99热这里都是精品|
国产.精品.日韩.另类.中文.在线.播放
|
国产一区二区不卡老阿姨|
91免费观看视频|
国产成人av影院|
久久66热re国产|
国产一区二区伦理|
免费看日韩精品|
99久久国产综合色|国产精品|
国产一区二区三区免费看|
日韩精品一区第一页|
成人不卡免费av|
国产成人免费在线|
91婷婷韩国欧美一区二区|
国产激情一区二区三区四区|
狠狠色丁香婷婷综合|
精品一二三四区|
国产一区二三区|
国产一区二区调教|
国产在线日韩欧美|
国产美女娇喘av呻吟久久|
国产精品自产自拍|
国产又黄又大久久|
国产精品一区免费在线观看|
国产精品资源网|
国产乱国产乱300精品|
国产成人在线视频免费播放|
国产精品69毛片高清亚洲|
国产激情一区二区三区四区|
国产成人小视频|
成人免费视频国产在线观看|
高清免费成人av|
成人白浆超碰人人人人|
gogogo免费视频观看亚洲一|
成人短视频下载|
91小视频免费观看|
蜜桃久久精品一区二区|
久久99久久精品|
国产成人综合自拍|
成人精品一区二区三区中文字幕
|
91亚洲精品久久久蜜桃|
日韩中文字幕一区二区三区|
日本aⅴ免费视频一区二区三区
|
美女网站色91|
精品在线一区二区|
国产精品香蕉一区二区三区|
粉嫩欧美一区二区三区高清影视|
成人精品视频一区二区三区|
99久久免费精品|
奇米精品一区二区三区在线观看|
久久99在线观看|
国产伦理精品不卡|
波多野结衣亚洲一区|
免费观看成人av|
国产精品1024久久|
91网站在线播放|
国产美女一区二区三区|
不卡视频一二三四|
久久99这里只有精品|
成人网在线播放|
This is aparagraph with a list following it.
- ltem l
- ltem 2
- ltem 3
? ? ? ?
? ? ? ?
? ? ? ?
? ? ? ?在不同瀏覽器中,innerHTML返回的文本可能會有所不同。IE和Opera常常把所有標簽轉換為大寫,而Safari、Chrome和Firefox則以文檔中指定的形式返回HTML-包括空格和縮進。不要指望所有瀏覽器都會返回沒有絲毫差別的innerHTML值。
? ? ? ?在寫入信息時,innerHTML會將給定的字符串解析為DOM子樹,并用這個子樹替換所有的子節 點。由于賦給innerHTML的字符串會被當作HTML,因此其中包含的所有標簽都會按照瀏覽器處理 HTML的標準方式,被轉換成對應的元素(同樣,這個過程也會因瀏覽器而異)。如果像下面這樣, 只設置簡單的文本,那么結果就如同設置innerText -樣:
? ? ? ?div.innerHTML="Hello world!":
? ? ? ?如果為innerHTML設置的字符串中包含HTML代碼,結果可能就會大不一樣了。區別就在于innerText會轉義HTML語法字符,而innerHTML會解析它們。來看下面的例子:
? ? ? ?div.innerHTML="Hello&welcome, \"reader"!";
? ? ? ?執行這行代碼之后的結果是:
? ? ? ?
Hello & welcome, " reader"!
? ? ? ?在設置完innerHTML之后,馬上就可以像訪問文檔中的其他節點一樣訪問新生成的節點。
? ? ? ?設置innerHTML會導致瀏覽器將HTML字符串解析為對應的DOM樹。換句話說,設置完innerHTML之后再讀取它,將會得到一個差別很大的字符串。這個字符串不再是原始的
HTML代碼,而是根據原始HTML字符串創建的DOM子樹經過序列化之后的結果。
? ? ? ?innerHTML也有一些限制。首先,在多數瀏覽器中,通過innerHTML插入的