Jadi saya mencoba menggunakan JavaScript on scroll
untuk memanggil suatu fungsi. Tapi saya ingin tahu apakah saya bisa mendeteksi arah scroll tanpa menggunakan jQuery. Jika tidak, apakah ada solusi untuk itu?
Saya berpikir untuk hanya meletakkan tombol 'ke atas' tetapi ingin menghindarinya jika saya bisa.
Saya sekarang baru saja mencoba menggunakan kode ini tetapi tidak berhasil:
if document.body.scrollTop <= 0 {
alert ("scrolling down")
} else {
alert ("scrolling up")
}
javascript
scroll
onscroll
dwinnbrown
sumber
sumber
wheelDelta
acara acara. Cukup tidak lintas browser. Lihat phrogz.net/js/wheeldelta.htmlJawaban:
Itu dapat dideteksi dengan menyimpan nilai sebelumnya
scrollTop
dan membandingkan nilai scrollTop saat ini dengannya.JavaScript:
sumber
lastScrollTop
ke pageYOffset || scrollTop daripada mengasumsikan 0Cara sederhana untuk menangkap semua acara gulir (sentuh dan roda)
sumber
Gunakan ini untuk menemukan arah gulungan. Ini hanya untuk menemukan arah Vertical Scroll. Mendukung semua browser lintas.
Contoh
sumber
Anda dapat mencoba melakukan ini.
sumber
Ini adalah tambahan dari jawaban prateek. Sepertinya ada kesalahan dalam kode di IE jadi saya memutuskan untuk memodifikasinya sedikit tidak ada yang mewah (hanya kondisi lain)
sumber
// Inisialisasi
// Mendengarkan acara tersebut
sumber
Anda bisa mendapatkan posisi scrollbar menggunakan
document.documentElement.scrollTop
. Dan kemudian hanya masalah membandingkannya dengan posisi sebelumnya.sumber
Kode sederhana ini akan bekerja: Periksa konsol untuk hasil.
sumber
Saya pribadi menggunakan kode ini untuk mendeteksi arah gulir di javascript ... Anda hanya perlu menentukan variabel untuk menyimpan nilai gulungan terakhir dan kemudian menggunakan ini jika & lain
sumber
Kode sederhana
sumber