<div id="containerDiv"></div>
#containerDiv {
position: absolute;
top: 0px;
width: 400px;
height: 100%;
padding: 5px;
font-size: .875em;
overflow-y: scroll;
}
document.getElementById("containerDiv").innerHTML = variableLongText;
Bagaimana cara mengatur ulang posisi gulir kembali ke atas div kontainer di lain waktu?
javascript
html
scroll
Aku disini
sumber
sumber
Cara lain untuk melakukannya dengan animasi yang halus adalah seperti ini
sumber
slow
, ini sangat ... lambat!slow
sebagai argumen kedua. Anda bisa memasukkan integer yang akan menjadi jumlah milidetik untuk menyelesaikan animasi.Saya mencoba jawaban yang ada untuk pertanyaan ini, dan tidak ada yang berfungsi di Chrome untuk saya. Apa yang berhasil sedikit berbeda:
sumber
scrollTo
adalah solusi pamungkas untuk menggulir jendela ke atas - bagian terbaiknya adalah tidak memerlukan pemilih id dan bahkan jika kita menggunakan struktur IFRAME itu akan bekerja dengan sangat baik.
jQuery
Opsi lain untuk melakukan hal yang sama adalah menggunakan jQuery dan ini akan memberikan tampilan yang lebih mulus
di mana 0 setelah scrollTop menentukan posisi scrollbar vertikal dalam piksel dan parameter kedua adalah parameter opsional yang menunjukkan waktu dalam mikrodetik untuk menyelesaikan tugas.
sumber
document.getElementById('scroller').scrollTo(0,0)
Ini berhasil untuk saya:
sumber
document.getElementById("yourDivID").scrollIntoView({behavior: "smooth", block: "start", inline: "nearest"})
scollIntoView
hanya berfungsi jika Anda memanggilnya pada elemen yang akan di-scroll. Dengan kata lain, tidak menyebutnya pada elemen yang ingin Anda menggulir ke , sebut saja pada elemen yang Anda inginkan untuk menggulir.Bagi mereka yang masih tidak bisa membuat ini berfungsi, pastikan elemen overflow ditampilkan sebelum menggunakan fungsi jQuery .
Contoh:
sumber
Bagi saya cara scrollTop tidak berfungsi, tetapi saya menemukan yang lain:
Namun, tidak memeriksa waktu minimum untuk rendering css yang andal, 100ms mungkin berlebihan.
sumber
Jika Anda ingin menggulir dengan transisi yang mulus, Anda dapat menggunakan ini!
(Vanilla JS)
Semoga ini membantu!!
sumber
Sesuai jawaban François Noël "Bagi mereka yang masih tidak dapat membuat ini berfungsi, pastikan bahwa elemen overflow ditampilkan sebelum menggunakan fungsi jQuery."
Saya telah bekerja dalam modal bootstrap yang berulang kali saya kemukakan dengan izin akun di div yang meluap pada dimensi y. Masalah saya adalah, saya mencoba menggunakan fungsi jquery .scrollTop (0) dan itu tidak akan berhasil tidak peduli bagaimana saya mencoba melakukannya. Saya harus menyiapkan acara untuk modal yang tidak mengatur ulang scrollbar sampai modal berhenti beranimasi. Kode yang akhirnya berhasil untuk saya ada di sini:
sumber
Jika konten html melebihi satu area pandang, ini berfungsi untuk saya hanya menggunakan javascript:
Salam,
sumber
Ini adalah satu-satunya cara untuk saya, dengan transisi scrolling yang mulus:
sumber
Saat mendapatkan elemen dengan nama kelas, jangan lupa nilai yang dikembalikan adalah array; Karenanya kode ini:
Tidak akan berhasil. Gunakan kode di bawah ini sebagai gantinya.
Saya pikir orang lain mungkin menghadapi masalah yang sama seperti saya; jadi ini seharusnya berhasil.
sumber
kedua kode ini bekerja untuk saya seperti pesona yang pertama ini akan menggulir ke bagian atas halaman tetapi jika Anda ingin menggulir ke beberapa div tertentu gunakan yang kedua dengan id div Anda.
Jika Anda ingin menggulir ke dengan nama kelas gunakan kode di bawah ini
sumber
ID Harus memiliki id dari div terkait yang memiliki properti overflow css.
document.querySelector('#YOUR_OVERFLOWED_DIV').scrollTop = 0;
sumber