鍍金池/ 問答/HTML/ 一個(gè)關(guān)于innerText和innerHTML的小疑問

一個(gè)關(guān)于innerText和innerHTML的小疑問

1.一個(gè)很小的問題
2.代碼:
對于
圖片描述

innerText顯示的是文本內(nèi)容,為什么去更改這個(gè)文本內(nèi)容的時(shí)候卻是把這個(gè)標(biāo)簽組也給刪除了?
有句話是:
node.innerText
Sets or gets the text between the start and end tags of the object
另外,有沒有其他方法(jquery也可)可以只替換文本內(nèi)容而不把i標(biāo)簽也刪了?

回答
編輯回答
冷咖啡

可能沒解決你的本質(zhì)問題,如果想只改變文字,在a標(biāo)簽里文字外面再加上一層span標(biāo)簽不就可以了嗎,然后去改soan的內(nèi)容

2017年9月14日 07:50
編輯回答
獨(dú)白

好像沒有那種方法,給文字加個(gè)標(biāo)簽吧

2018年3月18日 22:48
編輯回答
伴謊

找childNodes把,判斷是文本節(jié)點(diǎn)看里面有沒有類容,有就干掉

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    <p onclick="aaa(this)">
        <i>1111</i>
        aaaaaaa
    </p>
    <script>
function aaa(obj){
    for(el of obj.childNodes){
        if(el.nodeType==3&&!!el.nodeValue.replace(/\s+/g,'')){
            console.log(el)
            el.nodeValue = ''
        }
    }
}
    </script>
</body>
</html>
2018年4月24日 14:47
編輯回答
凝雅

純文字也是一個(gè)節(jié)點(diǎn),你可以遍歷通過childNodes屬性訪問任意一個(gè)節(jié)點(diǎn),
判斷是否為文字節(jié)點(diǎn),是的話就直接替換節(jié)點(diǎn)內(nèi)容

2018年1月27日 09:22