Rumah > hujung hadapan web > tutorial css > Mengapakah `document.body.scrollTop` Mengembalikan 0 dalam IE dan Bagaimana Saya Boleh Membetulkannya?

Mengapakah `document.body.scrollTop` Mengembalikan 0 dalam IE dan Bagaimana Saya Boleh Membetulkannya?

Linda Hamilton
Lepaskan: 2024-11-12 09:28:01
asal
912 orang telah melayarinya

Why Does `document.body.scrollTop` Return 0 in IE and How Can I Fix It?

Mendapatkan Kedudukan Tatal yang Tepat dalam IE Menggunakan document.body.scrollTop

Dalam IE, mengakses kedudukan tatal melalui document.body.scrollTop secara konsisten mengembalikan 0, walaupun semasa menatal. Tingkah laku ini boleh membingungkan pembangun yang ingin menjejak peristiwa menatal dengan berkesan.

Untuk menangani isu ini, penyemak imbas melaksanakan dua mod pemaparan berasingan: Mod Quirks dan Mod Standard. Mod Quirks direka untuk tapak web lama yang dibuat sebelum piawaian web diterima pakai secara meluas. Dalam Mod Quirks, IE salah menetapkan document.body.scrollTop kepada 0.

Untuk menyelesaikan percanggahan ini, satu penyelesaian ialah memastikan tapak web anda menggunakan doctype Mod Standard:

<!DOCTYPE html>
Salin selepas log masuk

Sekiranya tapak web anda tidak boleh bertukar kepada Mod Standard, terdapat pendekatan alternatif:

var top = (document.documentElement && document.documentElement.scrollTop) || 
              document.body.scrollTop;
Salin selepas log masuk

Kod ini menyemak kedua-dua documentElement dan body. Jika documentElement ditakrifkan, ia diutamakan kerana ia menyediakan kedudukan tatal yang lebih tepat. Jika tidak, ia akan kembali ke document.body.scrollTop.

Atas ialah kandungan terperinci Mengapakah `document.body.scrollTop` Mengembalikan 0 dalam IE dan Bagaimana Saya Boleh Membetulkannya?. 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