Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Menentukan sama ada Elemen DIV Mempunyai Bar Skrol yang Nampak?

Bagaimana untuk Menentukan sama ada Elemen DIV Mempunyai Bar Skrol yang Nampak?

Barbara Streisand
Barbara Streisandasal
2024-11-05 09:42:02337semak imbas

How to Determine if a DIV Element Has a Visible Scrollbar?

Menentukan Keterlihatan Bar Tatal

S: Menyemak Auto Limpahan dalam DIV

Bolehkah anda menentukan sama ada elemen DIV mempunyai sifat limpahannya ditetapkan kepada auto?

Contoh:

<code class="html"><div id="my_div" style="width: 100px; height: 100px; overflow:auto;" class="my_class">
  * content
</div></code>

Dalam coretan kod JavaScript yang disediakan, anda ingin menyemak sama ada bar skrol kelihatan dalam DIV dengan kelas "my_class" semasa tuding tetikus.

J: Menggunakan Pemalam jQuery Tersuai

Untuk mencapai fungsi ini, anda boleh menggunakan pemalam jQuery tersuai:

<code class="javascript">(function($) {
    $.fn.hasScrollBar = function() {
        return this.get(0).scrollHeight > this.height();
    }
})(jQuery);</code>

Anda boleh menggunakannya seperti berikut:

<code class="javascript">$('#my_div1').hasScrollBar(); // Returns true if there's a vertical scrollbar, false otherwise.</code>

Kaedah ini telah diuji dalam Firefox, Chrome dan IE6-8.

Nota: Pemalam ini mungkin tidak berfungsi dengan betul dengan pemilih teg badan.

Penyelesaian Alternatif untuk Bar Skrol Mendatar:

Jika bar skrol mendatar menyebabkan bar skrol menegak muncul, anda boleh gunakan kaedah alternatif ini:

<code class="javascript">return this.get(0).scrollHeight > this.get(0).clientHeight;</code>

Atas ialah kandungan terperinci Bagaimana untuk Menentukan sama ada Elemen DIV Mempunyai Bar Skrol yang Nampak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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