Rumah > hujung hadapan web > tutorial js > Bagaimanakah Saya Boleh Memilih Nod Teks dalam Elemen Menggunakan jQuery atau JavaScript Tulen?

Bagaimanakah Saya Boleh Memilih Nod Teks dalam Elemen Menggunakan jQuery atau JavaScript Tulen?

Linda Hamilton
Lepaskan: 2024-12-28 01:59:09
asal
185 orang telah melayarinya

How Can I Select Text Nodes within an Element Using jQuery or Pure JavaScript?

Memilih Nod Teks dengan jQuery

Memilih nod teks turunan bagi elemen dengan jQuery memerlukan sedikit kreativiti. Walaupun jQuery tidak menawarkan fungsi khusus untuk tugasan ini, adalah mungkin untuk menggabungkan kaedah contents() dan find() untuk mencapai hasil yang diingini.

jQuery Solution

var getTextNodesIn = function(el) {
    return $(el).find(":not(iframe)").addBack().contents().filter(function() {
        return this.nodeType == 3;
    });
};

getTextNodesIn(el);
Salin selepas log masuk

Kod ini mengumpulkan nod anak, termasuk nod teks, menggunakan contents(). Ia kemudian mengasingkan unsur keturunan dan nod teks menggunakan find(). Ambil perhatian bahawa penyelesaian ini memerlukan pengendalian khas untuk elemen iframe.

Penyelesaian JavaScript Tulen

Jika anda lebih suka pendekatan JavaScript tulen, fungsi berikut boleh digunakan:

function getTextNodesIn(node, includeWhitespaceNodes) {
    var textNodes = [], nonWhitespaceMatcher = /\S/;

    function getTextNodes(node) {
        if (node.nodeType == 3) {
            if (includeWhitespaceNodes || nonWhitespaceMatcher.test(node.nodeValue)) {
                textNodes.push(node);
            }
        } else {
            for (var i = 0, len = node.childNodes.length; i < len; ++i) {
                getTextNodes(node.childNodes[i]);
            }
        }
    }

    getTextNodes(node);
    return textNodes;
}

getTextNodesIn(el);
Salin selepas log masuk

Fungsi ini merentasi pepohon DOM secara rekursif, mengenal pasti nod teks berdasarkan jenis nodnya. Ia membenarkan kemasukan nod ruang putih dengan menghantar parameter.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memilih Nod Teks dalam Elemen Menggunakan jQuery atau JavaScript Tulen?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan