Rumah > hujung hadapan web > tutorial js > Bagaimana untuk Mendapatkan Elemen mengikut Nama Kelas dalam Internet Explorer?

Bagaimana untuk Mendapatkan Elemen mengikut Nama Kelas dalam Internet Explorer?

Mary-Kate Olsen
Lepaskan: 2024-11-06 00:48:02
asal
986 orang telah melayarinya

How to Retrieve Elements by Class Name in Internet Explorer?

getElementsByClassName() Keserasian dengan IE

Soalan: Cara mendapatkan semula susunan elemen dengan kelas tertentu dengan berkesan , mempertimbangkan pengehadan keserasian IE?

Jawapan:

Document.getElementsByClassName() ialah kaedah moden yang tidak disokong oleh IE. Sebaliknya, pertimbangkan pendekatan berikut:

Fungsi Tersuai (IE6 ):

Tentukan fungsi tersuai untuk meniru getElementsByClassName(). Ini melibatkan merentasi DOM dan menguji nama kelas elemen terhadap nama kelas yang disediakan:

<code class="js">function getElementsByClassName(node, className) {
    var a = [];
    var re = new RegExp('(^| )' + className + '( |$)');
    var els = node.getElementsByTagName('*');
    for (var i = 0, j = els.length; i < j; i++)
        if (re.test(els[i].className)) a.push(els[i]);
    return a;
}

// Usage:
var tabs = getElementsByClassName(document.body, 'tab');</code>
Salin selepas log masuk

querySelectorAll (IE8 ):

Jika menyokong IE8 atau ke atas adalah mencukupi , lanjutkan dokumen dan objek Element untuk menyokong querySelectorAll():

<code class="js">if (!document.getElementsByClassName) {
    document.getElementsByClassName = function (className) {
        return this.querySelectorAll('.' + className);
    };
    Element.prototype.getElementsByClassName = document.getElementsByClassName;
}

// Usage:
var tabs = document.getElementsByClassName('tab');</code>
Salin selepas log masuk

Pastikan anda memanggil getElementsByClassName() dengan nod yang dikehendaki sebagai hujah pertama, kerana ia bukan kaedah dokumen. Dengan melaksanakan salah satu daripada penyelesaian ini, anda boleh mendapatkan semula elemen mengikut nama kelas, memastikan keserasian dengan julat penyemak imbas yang lebih luas, termasuk IE.

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Elemen mengikut Nama Kelas dalam Internet Explorer?. 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