在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久久精品日日躁夜夜躁欧美
国产suv精品一区二区三区|
成人一区二区三区|
国产麻豆日韩欧美久久|
国产福利一区二区三区在线视频|
97精品久久久午夜一区二区三区
|
成人综合婷婷国产精品久久蜜臀
|
成人蜜臀av电影|
91蜜桃视频在线|
国产精品77777竹菊影视小说|
天堂影院一区二区|
国产一区在线看|
丝袜脚交一区二区|
国产suv精品一区二区6|
精品一区二区三区免费视频|
99久久99久久精品国产片果冻|
国产综合久久久久影院|
日韩高清欧美激情|
av电影在线观看完整版一区二区|
国内不卡的二区三区中文字幕|
视频在线观看国产精品|
www.日韩在线|
高清在线成人网|
国产曰批免费观看久久久|
日韩av一区二区三区四区|
成人黄色一级视频|
国产成人免费高清|
国产一区二区三区久久悠悠色av
|
国产a精品视频|
精品一区二区三区av|
日韩高清在线电影|
97超碰欧美中文字幕|
成人国产精品视频|
国产精品一色哟哟哟|
精品一区二区久久|
久久精品国产精品亚洲综合|
日本视频中文字幕一区二区三区|
91麻豆产精品久久久久久|
av午夜一区麻豆|
caoporen国产精品视频|
成人av资源网站|
成人av在线资源网|
youjizz国产精品|
99天天综合性|
天堂一区二区在线|
日韩av二区在线播放|
日韩国产在线观看一区|
日本v片在线高清不卡在线观看|
91免费小视频|
日韩精品久久久久久|
日韩精品高清不卡|
久久福利资源站|
韩国成人福利片在线播放|
狠狠色狠狠色综合系列|
国产精品一区二区91|
国产成人免费在线|
大白屁股一区二区视频|
91在线国产观看|
蜜桃久久av一区|
激情五月播播久久久精品|
国模一区二区三区白浆|
成人一级片在线观看|
99久久婷婷国产精品综合|
日韩精品亚洲一区|
久草在线在线精品观看|
国产 欧美在线|
日本不卡一区二区三区高清视频|
精久久久久久久久久久|
东方aⅴ免费观看久久av|
91麻豆免费视频|
精品一区二区影视|
不卡av在线免费观看|
日韩国产欧美在线观看|
国产一区二区导航在线播放|
成人av高清在线|
日本特黄久久久高潮|
国精品**一区二区三区在线蜜桃|
成人高清视频在线|
六月丁香婷婷色狠狠久久|
国产激情一区二区三区桃花岛亚洲|
成+人+亚洲+综合天堂|
日本亚洲免费观看|
国产成人一区二区精品非洲|
日精品一区二区三区|
精品一区二区三区免费观看
|
久久精品国产99国产|
麻豆精品视频在线|
国产成人丝袜美腿|
日韩vs国产vs欧美|
99在线视频精品|
国产一区二区三区蝌蚪|
日韩精彩视频在线观看|
国产精品一卡二|
美女一区二区视频|
成人久久久精品乱码一区二区三区|
日韩高清电影一区|
成人夜色视频网站在线观看|
久久99精品国产91久久来源
|
成人av中文字幕|
久久精品国产精品亚洲红杏|
91在线视频播放地址|
国产一区二区不卡在线|
久久99精品国产麻豆不卡|
99国产麻豆精品|
懂色av一区二区夜夜嗨|
国产毛片精品国产一区二区三区|
久久精品久久99精品久久|
视频一区国产视频|
av激情综合网|
成人国产免费视频|
高清不卡在线观看|
国产一区二区按摩在线观看|
久久99国产精品尤物|
视频一区在线播放|
日韩综合小视频|
石原莉奈在线亚洲二区|
99re6这里只有精品视频在线观看|
国产99久久久国产精品潘金网站|
国产一区999|
国产中文字幕精品|
国产在线一区二区综合免费视频|
看片的网站亚洲|
蜜桃一区二区三区在线观看|
蜜臀久久99精品久久久画质超高清|
91日韩精品一区|
日韩精品午夜视频|
免费久久99精品国产|
麻豆国产精品官网|
精品一区免费av|
国产成人免费在线视频|
成人精品gif动图一区|
波多野洁衣一区|
91美女福利视频|
日本网站在线观看一区二区三区|
奇米色一区二区|
久久99国产精品久久99果冻传媒|
极品少妇xxxx精品少妇偷拍
|
狠狠色狠狠色综合日日91app|
久草热8精品视频在线观看|
国产综合色在线视频区|
成人午夜激情视频|
91丨九色丨蝌蚪富婆spa|
奇米影视在线99精品|
韩国v欧美v亚洲v日本v|
懂色av噜噜一区二区三区av|
99久久精品国产麻豆演员表|
免费在线看成人av|
国产一区二区成人久久免费影院|
成人亚洲一区二区一|
91香蕉视频黄|
精品午夜久久福利影院|
成人激情午夜影院|
蜜桃av一区二区|
国产成人亚洲精品青草天美|
99久久婷婷国产综合精品电影|
免费成人av资源网|
国产ts人妖一区二区|
日韩激情一区二区|
国产高清一区日本|
日韩国产在线观看|
国产白丝精品91爽爽久久
|
国产精品18久久久久久久久久久久|
成人精品高清在线|
麻豆一区二区三区|
成人少妇影院yyyy|
久久综合综合久久综合|
波多野结衣中文字幕一区|
久久97超碰国产精品超碰|
成人免费黄色大片|
精品在线你懂的|
高清成人免费视频|
91污在线观看|
国产美女精品一区二区三区|
日韩av电影天堂|
国产v综合v亚洲欧|
久久99久久99精品免视看婷婷
|
美腿丝袜在线亚洲一区|
成人性色生活片|
久久国产精品区|
91视频com|
懂色av一区二区三区免费观看|
久久99精品久久久|
日韩成人av影视|
99久久精品情趣|
国产精品羞羞答答xxdd|
麻豆精品在线播放|
97aⅴ精品视频一二三区|
处破女av一区二区|
国产自产视频一区二区三区|
久色婷婷小香蕉久久|
日韩和欧美的一区|
99久久久精品|
波多野结衣亚洲一区|
国产成人精品亚洲777人妖|
精品在线免费视频|
麻豆免费精品视频|
日韩高清不卡一区二区三区|
99re热视频精品|
av一区二区久久|
成人av午夜影院|
本田岬高潮一区二区三区|
懂色av噜噜一区二区三区av|
国产电影精品久久禁18|
国产激情视频一区二区在线观看|
国产一区三区三区|
精彩视频一区二区三区|
激情久久久久久久久久久久久久久久|
日本少妇一区二区|
免费在线看成人av|
免费在线成人网|
六月丁香婷婷久久|
久久99精品久久久久久久久久久久
|
水野朝阳av一区二区三区|
av电影天堂一区二区在线|
不卡区在线中文字幕|
www.成人在线|
视频一区二区不卡|
蜜乳av一区二区三区|
精品一区二区在线视频|
国产精品白丝av|
国产成人在线免费观看|
丁香一区二区三区|
91丨九色丨国产丨porny|
首页综合国产亚洲丝袜|
久久精品国产一区二区|
国产一区二区三区在线观看免费视频|
国产一区二区免费视频|
国产成都精品91一区二区三|
成人av网址在线|
日韩电影在线一区|
久草热8精品视频在线观看|
国产成人精品综合在线观看|
成人av电影在线播放|
免费观看成人av|
国产精品一区三区|
99久久婷婷国产综合精品
|
日韩不卡免费视频|
狠狠色丁香久久婷婷综合_中|
国产精品一二三区|
99精品偷自拍|
久久99精品一区二区三区|
国产69精品一区二区亚洲孕妇|
91在线国产观看|
国内精品国产三级国产a久久|
成人免费视频一区|
美女在线一区二区|
不卡高清视频专区|
老司机精品视频在线|
成人国产精品免费网站|
久久国产人妖系列|
成人精品免费网站|
激情五月婷婷综合网|
91美女片黄在线观看91美女|
国产尤物一区二区在线|
日韩激情一二三区|
成人激情av网|
韩国精品在线观看|
日韩福利视频网|
成人av资源在线|
国产精品综合二区|
日本 国产 欧美色综合|
jvid福利写真一区二区三区|
极品少妇xxxx偷拍精品少妇|
日韩精品欧美成人高清一区二区|
高清不卡在线观看av|
国内精品视频666|
美女视频一区二区三区|
jizz一区二区|
成人性色生活片免费看爆迷你毛片|
久久97超碰国产精品超碰|
91丨porny丨蝌蚪视频|
国产91精品一区二区麻豆亚洲|
国产一区二区三区观看|
av在线这里只有精品|
国产精品1024|
国产一区二区三区免费观看|
免费观看久久久4p|
91美女片黄在线观看|
成人福利视频在线看|
国产v日产∨综合v精品视频|
国产在线播精品第三|
精品一区二区在线免费观看|
蜜臀av性久久久久蜜臀aⅴ四虎
|
eeuss鲁片一区二区三区在线观看
eeuss影院一区二区三区
|
老司机精品视频一区二区三区|
91麻豆国产香蕉久久精品|
不卡一区二区中文字幕|
成人网男人的天堂|
风间由美性色一区二区三区|
国产精品一区二区三区99|
狠狠色丁香婷婷综合|
久草在线在线精品观看|
久久99国产精品久久99|
久久99蜜桃精品|
精品一区在线看|
国产一区欧美日韩|
国产精品系列在线观看|
风流少妇一区二区|
成人免费观看男女羞羞视频|
av电影一区二区|
91麻豆swag|
蜜桃视频一区二区|
久久av老司机精品网站导航|
狠狠色丁香久久婷婷综合_中|
国产呦精品一区二区三区网站
|
国产99精品视频|
本田岬高潮一区二区三区|
99久久婷婷国产精品综合|
视频一区二区不卡|
蜜桃在线一区二区三区|
国产一区二区毛片|
成人综合婷婷国产精品久久蜜臀
|
韩国欧美国产一区|
国产精品夜夜嗨|
成人av在线影院|
日韩成人dvd|
精品一区二区免费在线观看|
国产成人午夜精品影院观看视频|
成人91在线观看|
蜜臀av一级做a爰片久久|
国产一区二区电影|
99天天综合性|
久久福利资源站|
成人免费视频播放|
免费观看日韩电影|
国产成人精品一区二区三区网站观看|
99精品欧美一区二区蜜桃免费
|
韩日精品视频一区|
成人一区二区三区在线观看|
日韩电影在线观看一区|
国产麻豆成人精品|
91小视频在线免费看|
国产在线不卡一卡二卡三卡四卡|
成人精品鲁一区一区二区|
美女脱光内衣内裤视频久久网站
|
三级成人在线视频|
国产一区二区三区蝌蚪|
91影院在线观看|
韩国v欧美v亚洲v日本v|
国产成人亚洲精品青草天美
|
日韩国产在线观看一区|
国产在线不卡视频|
视频一区欧美精品|
国产精品一级片在线观看|
日韩va欧美va亚洲va久久|
福利一区在线观看|
免费看日韩精品|
99久久久精品免费观看国产蜜|
国产原创一区二区|
日本在线播放一区二区三区|
成人福利电影精品一区二区在线观看|
九九久久精品视频|
91视频免费观看|
成人在线综合网|
国产伦精一区二区三区|
蜜桃视频免费观看一区|
99re热视频精品|
a级精品国产片在线观看|
国产一二精品视频|
毛片一区二区三区|
日本强好片久久久久久aaa|
成人动漫一区二区在线|
国产成人亚洲综合a∨猫咪|
韩国av一区二区三区在线观看|
91免费看片在线观看|
99久久婷婷国产综合精品电影
|
日韩极品在线观看|
91片黄在线观看|
99久久精品久久久久久清纯|
成人av网站免费|
成人免费看的视频|
成人一区二区视频|
成人免费观看av|
成人h动漫精品|
99视频精品全部免费在线|
成人av电影在线观看|
成人动漫在线一区|
成人av资源在线观看|
av激情综合网|
99精品视频一区|
91免费观看在线|
成人app下载|
丝袜美腿亚洲综合|
日韩中文欧美在线|
免费精品视频最新在线|
蜜桃视频免费观看一区|
精品一区二区三区在线观看国产|
激情五月婷婷综合|
国产一区三区三区|
成人亚洲一区二区一|
国产精品18久久久久久久久久久久
|
av电影天堂一区二区在线|
av综合在线播放|
日韩电影一区二区三区|
麻豆精品视频在线观看免费|
国内精品久久久久影院一蜜桃|
国产福利电影一区二区三区|
成人精品小蝌蚪|
日韩 欧美一区二区三区|
久久狠狠亚洲综合|
国产寡妇亲子伦一区二区|
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插入的
十余年專注于網站建設_小程序開發_APP開發,低調、敢創新、有情懷!



