在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的支持。為了確??鐬g覽器兼容,有必要像下面這樣通過函數來檢測可以使用哪個屬性:
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的支持。為了確??鐬g覽器兼容,有必要像下面這樣通過函數來檢測可以使用哪個屬性:
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久久精品日日躁夜夜躁欧美
欧美a一区二区|
国产一区日韩二区欧美三区|
日本欧洲一区二区|
国产剧情一区二区|
91老师片黄在线观看|
国产一区二区三区久久久|
成人动漫一区二区三区|
精品一区二区在线视频|
93久久精品日日躁夜夜躁欧美|
蜜桃视频第一区免费观看|
丁香激情综合国产|
久久99在线观看|
视频一区二区国产|
成人午夜看片网址|
国产高清在线观看免费不卡|
蜜桃在线一区二区三区|
视频精品一区二区|
日韩精品一级二级|
成a人片国产精品|
国产麻豆精品久久一二三|
日韩成人午夜精品|
91在线一区二区三区|
不卡一区在线观看|
成人免费av资源|
国产成人福利片|
国内精品写真在线观看|
蜜桃久久精品一区二区|
日韩福利电影在线|
丝袜国产日韩另类美女|
99久久精品免费精品国产|
懂色av噜噜一区二区三区av|
国产一区二区按摩在线观看|
久久电影网站中文字幕|
麻豆91在线播放|
麻豆一区二区三区|
六月婷婷色综合|
久久精品国产一区二区|
久久精品国产精品亚洲精品|
麻豆国产91在线播放|
久久精品国产精品亚洲红杏|
韩国欧美一区二区|
国产美女一区二区|
福利91精品一区二区三区|
国产寡妇亲子伦一区二区|
成人永久看片免费视频天堂|
不卡av电影在线播放|
99riav一区二区三区|
日韩精品一级二级|
精品亚洲成av人在线观看|
狠狠色丁香九九婷婷综合五月|
国内精品写真在线观看|
国产91在线看|
av电影天堂一区二区在线
|
国产999精品久久久久久绿帽|
国产一区二区电影|
懂色av一区二区夜夜嗨|
91免费观看视频在线|
日本特黄久久久高潮|
青青草国产精品97视觉盛宴|
韩国成人福利片在线播放|
国产精品18久久久久久久网站|
福利一区二区在线观看|
av亚洲产国偷v产偷v自拍|
97成人超碰视|
国产呦萝稀缺另类资源|
成人99免费视频|
久久综合综合久久综合|
国产成人啪午夜精品网站男同|
成人av免费观看|
久久国产精品区|
成人三级在线视频|
六月丁香婷婷久久|
成人久久久精品乱码一区二区三区
|
99精品久久久久久|
麻豆成人久久精品二区三区红|
国产精品一区二区男女羞羞无遮挡
|
国产麻豆成人传媒免费观看|
av电影天堂一区二区在线|
六月丁香综合在线视频|
成人av网站免费观看|
精品一区二区成人精品|
日韩专区一卡二卡|
国产精品亚洲一区二区三区妖精
|
人禽交欧美网站|
国产成人精品一区二|
日韩成人av影视|
99精品在线免费|
青青草国产成人99久久|
成人高清伦理免费影院在线观看|
日本欧洲一区二区|
www.av亚洲|
国产精品一区二区男女羞羞无遮挡|
日韩国产精品大片|
成人动漫一区二区在线|
国产精品亚洲人在线观看|
日本女优在线视频一区二区|
成人黄色网址在线观看|
国产剧情一区在线|
极品尤物av久久免费看|
免费在线观看一区二区三区|
99视频在线精品|
成人在线视频首页|
岛国精品一区二区|
国产丶欧美丶日本不卡视频|
精品中文字幕一区二区|
免费高清在线一区|
蜜桃视频一区二区三区|
男人的天堂亚洲一区|
日日噜噜夜夜狠狠视频欧美人
|
免费观看在线综合|
日韩精品免费视频人成|
91在线视频观看|
99国产精品一区|
91日韩在线专区|
91麻豆国产在线观看|
av电影在线观看一区|
99久久亚洲一区二区三区青草
|
91尤物视频在线观看|
成人深夜在线观看|
www.成人网.com|
91麻豆免费观看|
99re亚洲国产精品|
日本欧洲一区二区|
久久国产精品99精品国产|
精品一区二区国语对白|
国产大片一区二区|
aaa亚洲精品|
日韩国产精品大片|
美女脱光内衣内裤视频久久网站
|
老色鬼精品视频在线观看播放|
日本不卡在线视频|
精品一区二区在线观看|
国产成人精品一区二区三区四区
|
国产a视频精品免费观看|
国产成人综合在线播放|
不卡区在线中文字幕|
www.日韩av|
日韩高清欧美激情|
国产裸体歌舞团一区二区|
成人妖精视频yjsp地址|
91在线精品秘密一区二区|
日本不卡视频在线|
国产美女精品在线|
91免费版在线|
国产一区视频网站|
91视频.com|
国产成人在线影院|
首页综合国产亚洲丝袜|
国产麻豆成人传媒免费观看|
99精品视频一区二区三区|
久久99深爱久久99精品|
成人福利电影精品一区二区在线观看|
日日欢夜夜爽一区|
粉嫩一区二区三区性色av|
日本色综合中文字幕|
懂色一区二区三区免费观看|
日本美女一区二区三区视频|
国产精品66部|
免费观看成人av|
99久久精品国产麻豆演员表|
激情欧美一区二区三区在线观看|
成人三级伦理片|
国内精品在线播放|
日本欧美大码aⅴ在线播放|
国产91在线观看|
韩国av一区二区三区四区|
91在线高清观看|
国产成a人无v码亚洲福利|
奇米精品一区二区三区四区|
成人高清视频免费观看|
狠狠狠色丁香婷婷综合久久五月|
hitomi一区二区三区精品|
国产丶欧美丶日本不卡视频|
精品一区二区三区免费播放|
日本亚洲三级在线|
天堂av在线一区|
福利一区在线观看|
国产成人在线免费观看|
久久99国产精品免费|
91欧美一区二区|
www.av精品|
成人h版在线观看|
国产精品一区免费视频|
精品综合免费视频观看|
青青草国产成人99久久|
日本大胆欧美人术艺术动态|
丝袜亚洲精品中文字幕一区|
99re热这里只有精品视频|
国产v综合v亚洲欧|
岛国精品在线观看|
成人三级伦理片|
成人福利视频网站|
bt欧美亚洲午夜电影天堂|
成人精品国产福利|
粉嫩一区二区三区性色av|
懂色av中文一区二区三区|
国产a区久久久|
成人免费毛片a|
成人动漫视频在线|
91色婷婷久久久久合中文|
95精品视频在线|
日韩精品欧美精品|
毛片不卡一区二区|
国产一区不卡精品|
国产.欧美.日韩|
www.亚洲精品|
日韩精品一二区|
久久国产夜色精品鲁鲁99|
麻豆久久一区二区|
国产资源精品在线观看|
国产一区二区三区四区五区美女
|
国内久久精品视频|
国产激情一区二区三区四区|
国产成人激情av|
av中文字幕一区|
日韩av二区在线播放|
久久99精品久久久久久动态图|
久草热8精品视频在线观看|
三级亚洲高清视频|
日韩制服丝袜先锋影音|
精品综合免费视频观看|
国产999精品久久久久久绿帽|
成人国产精品免费观看动漫|
日韩精品91亚洲二区在线观看|
免费人成网站在线观看欧美高清|
激情久久久久久久久久久久久久久久|
久久99久久久欧美国产|
成人黄色小视频在线观看|
日本欧美加勒比视频|
国产精品123区|
日本在线不卡一区|
国产成人免费网站|
日本不卡视频在线|
国产成人啪午夜精品网站男同|
av在线播放一区二区三区|
美女视频一区二区三区|
国产a精品视频|
美女国产一区二区|
aaa国产一区|
国产一区二区三区在线观看精品
|
99re热这里只有精品视频|
久久精品国产亚洲aⅴ|
成人福利视频在线|
激情综合色丁香一区二区|
av成人老司机|
国产成人99久久亚洲综合精品|
日韩成人伦理电影在线观看|
懂色av中文字幕一区二区三区|
蜜桃视频在线观看一区二区|
成人国产免费视频|
国产一区视频导航|
蜜臀久久久久久久|
99久久99久久精品免费看蜜桃|
精品一区二区三区免费视频|
99国产精品国产精品久久|
国产伦精品一区二区三区免费迷
|
国产精品88888|
久久国产三级精品|
日本亚洲最大的色成网站www|
成人网在线播放|
国产成人av影院|
精品在线一区二区|
日本特黄久久久高潮|
91一区二区三区在线播放|
高清不卡一区二区|
国产成人av一区二区三区在线
|
国产一区日韩二区欧美三区|
青青草伊人久久|
日韩综合一区二区|
96av麻豆蜜桃一区二区|
av成人免费在线|
www.66久久|
99精品视频免费在线观看|
成人动漫在线一区|
成人激情午夜影院|
成人国产亚洲欧美成人综合网|
国产91精品欧美|
国产精品白丝av|
国产激情一区二区三区|
国产精品一区二区91|
国内精品免费**视频|
精品一区二区三区日韩|
激情综合网最新|
国产精品一区二区在线播放|
国产精品资源在线看|
国产裸体歌舞团一区二区|
国产福利一区二区|
成人国产精品免费网站|
www.色精品|
日韩精品一二三四|
精品在线亚洲视频|
国产福利一区二区|
99re热这里只有精品免费视频|
av成人免费在线|
欧美a级理论片|
国产一区二区成人久久免费影院|
国产成人综合网|
99re成人精品视频|
蜜臀久久99精品久久久久宅男|
秋霞午夜鲁丝一区二区老狼|
捆绑调教美女网站视频一区|
国产一区二区在线电影|
成人中文字幕电影|
首页国产欧美日韩丝袜|
极品销魂美女一区二区三区|
国产成人在线色|
日韩精品成人一区二区三区
|
国模无码大尺度一区二区三区|
韩国三级在线一区|
www.日本不卡|
麻豆精品视频在线观看免费|
国产精品资源在线看|
91视频国产观看|
国产精品资源在线看|
99久久精品国产网站|
久久99精品久久久久久动态图|
国产mv日韩mv欧美|
免费观看在线色综合|
国产v综合v亚洲欧|
久久国产精品99久久久久久老狼
|
国产一本一道久久香蕉|
成人高清免费观看|
美女视频黄 久久|
成人免费毛片a|
精品一区二区在线播放|
99久久免费精品|
国产在线看一区|
天堂久久久久va久久久久|
国产精品亚洲一区二区三区妖精
|
日韩精品成人一区二区三区
|
91亚洲国产成人精品一区二区三|
久久精品国产77777蜜臀|
国产成人av电影在线观看|
欧美a级理论片|
91小视频免费看|
国产91精品在线观看|
精油按摩中文字幕久久|
视频精品一区二区|
成人污污视频在线观看|
国产一区二区0|
大陆成人av片|
国产一区二区三区精品欧美日韩一区二区三区
|
91免费视频网|
国产精品一区二区你懂的|
美女视频网站久久|
日韩精品欧美成人高清一区二区|
国产成人午夜精品影院观看视频|
美腿丝袜在线亚洲一区|
国产成人综合精品三级|
国产在线看一区|
狠狠久久亚洲欧美|
激情综合网天天干|
毛片一区二区三区|
日日欢夜夜爽一区|
91免费在线看|
天堂资源在线中文精品
|
日韩精品电影在线|
99视频在线观看一区三区|
国产99久久精品|
国产sm精品调教视频网站|
国产精品亚洲一区二区三区妖精
|
国产69精品久久777的优势|
国产主播一区二区|
黄色小说综合网站|
极品少妇一区二区三区精品视频|
麻豆精品视频在线观看视频|
日本va欧美va瓶|
免费人成网站在线观看欧美高清|
日韩黄色一级片|
日本美女一区二区|
久久精品国产久精国产爱|
毛片av中文字幕一区二区|
久久97超碰国产精品超碰|
久久精品999|
国产一区中文字幕|
国产91丝袜在线观看|
不卡大黄网站免费看|
91污在线观看|
日韩不卡一二三区|
蜜臀av一区二区三区|
韩国成人在线视频|
国产成人日日夜夜|
97精品电影院|
久久99精品久久久久久动态图
|
视频一区国产视频|
蜜桃av一区二区三区|
国产一区美女在线|
成人黄色在线看|
青青国产91久久久久久|
精品一区二区三区蜜桃|
国产91在线看|
日本欧美一区二区在线观看|
国产呦萝稀缺另类资源|
国产**成人网毛片九色|
91色在线porny|
国产伦精品一区二区三区免费
|
久久99精品国产麻豆不卡|
国产精品综合久久|
91麻豆精品在线观看|
国精品**一区二区三区在线蜜桃
|
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插入的