Saya memiliki baris JavaScript ini dan perilaku yang saya lihat adalah bahwa baris tersebut selectedLi
langsung menghilang tanpa "meluncur ke atas". Ini bukan perilaku yang saya harapkan.
Apa yang harus saya lakukan agar selectedLi
slide ke atas sebelum dihapus?
selectedLi.slideUp("normal").remove();
javascript
jquery
animation
Eric Schoonover
sumber
sumber
Anda harus lebih eksplisit: daripada mengatakan "ini" (yang saya setuju seharusnya berhasil), Anda harus melakukan ini:
sumber
$("#yourdiv")
bukannya$(this)
benar-benar berlebihan dan bukan itu sebabnya kode ini memperbaiki masalah OP. Kode ini memperbaiki masalah karena menggunakancomplete
callback.Cara termudah adalah memanggil fungsi "remove ()" di dalam slideUp sebagai parameter seperti yang dikatakan orang lain, seperti contoh ini:
Ini adalah suatu keharusan untuk memanggilnya di dalam fungsi anonim () untuk mencegah remove () dijalankan sebelum slideUp berakhir. Cara lain yang sama adalah dengan menggunakan fungsi jQuery "promise ()". Lebih baik bagi mereka yang suka kode penjelasan sendiri, seperti saya;)
sumber
Dengan menggunakan promise, Anda juga dapat menunggu beberapa animasi selesai, misalnya:
sumber
sumber