Saya telah menjawab soalan yang sama sebelum ini Semasa melintasi nodeChild, teks ini adalah contoh Text() Anda boleh merujuk kepada soalan yang saya jawab sebelum ini: /q/10...
Untuk memahami soalan, anda mungkin ingin mendapatkan semua teks yang dimiliki oleh elemen induk tetapi bukan elemen anak
Andaikan anda tahu kedudukan teks, ia lebih mudah, jika teks berada di permulaan:
//pp = """<p class="mui-media-body js-media-body js-anviz-body">Trouble Ticket
<p class="anviz-ellipsis js-des">You can sumbit your trouble and …</p>
</p>"""
var childNodes = pp.childNodes;
var text = childNodes[0]; // Trouble Ticket
Jika kedudukan teks tidak pasti, atau terdapat berbilang, maka adalah perlu untuk melintasi elemen anak elemen induk dan mencari semua elemen yang atribut nodnya ialah teks:
//pp = """<p class="mui-media-body js-media-body js-anviz-body">
Trouble Ticket
<p class="anviz-ellipsis js-des">You can sumbit your trouble and …</p>
Trouble Ticket2
</p>"""
var childNodes = pp.childNodes;
var textNodes = [];
childNodes.forEach(function(node){
if (node.nodeType === 3) {
textNodes.push(node);
} // 3 为 文本
});
//textNodes === ['Trouble Ticket', 'Trouble Ticket2']
Kaedah klon di atas adalah lebih baik Bagaimana jika ada teks di sebalik tag p? Menggunakan firstChild hanya mendapat nod teks pertama, dan ia perlu dilalui untuk mendapatkan nod teks berikutnya.
Sebaik-baiknya tambahkan label untuk membungkusnya untuk akses mudah
OK!
Mula-mula klon elemen, kemudian alih keluar elemen kanak-kanak, dan akhirnya dapatkan teks tanpa elemen kanak-kanak
Saya telah menjawab soalan yang sama sebelum ini Semasa melintasi nodeChild, teks ini adalah contoh
Text()
Anda boleh merujuk kepada soalan yang saya jawab sebelum ini: /q/10...Lebih munasabah untuk menambah span untuk menutupnya
Untuk memahami soalan, anda mungkin ingin mendapatkan semua teks yang dimiliki oleh elemen induk tetapi bukan elemen anak
Andaikan anda tahu kedudukan teks, ia lebih mudah, jika teks berada di permulaan:
Jika kedudukan teks tidak pasti, atau terdapat berbilang, maka adalah perlu untuk melintasi elemen anak elemen induk dan mencari semua elemen yang atribut nodnya ialah teks:
Kaedah klon di atas adalah lebih baik Bagaimana jika ada teks di sebalik tag p?
Menggunakan firstChild hanya mendapat nod teks pertama, dan ia perlu dilalui untuk mendapatkan nod teks berikutnya.
kod html:
js kod: