Di jQuery, ada .hide()
dan .show()
metode yang menetapkan display: none
pengaturan CSS .
Apakah ada fungsi setara yang akan mengatur visibility: hidden
pengaturan?
Saya tahu saya bisa menggunakan .css()
tetapi saya lebih suka beberapa fungsi seperti .hide()
atau lebih. Terima kasih.
.toggle()
Jawaban:
Anda bisa membuat plugin sendiri.
Jika Anda ingin membebani jQuery asli
toggle()
, yang tidak saya sarankan ...jsFiddle .
sumber
toggle()
yang dapat merusak skrip lain. Jika Anda mau, Anda bisa menambahkan argumen tambahantoggle()
untuk menentukan apakah harus diubahvisibility
ataudisplay
tidak. Saya hanya menggunakan yang kustom dalam contoh terakhir saya, namun. :)show
(kecepatan, pelonggaran, panggilan balik)?(function() { })()
atau mirip, ASI tidak akan masuk karena sepertinya doa fungsi. Coba ini , lalu hapus!
.Tidak ada yang terintegrasi tetapi Anda dapat menulis sendiri dengan mudah:
Anda kemudian dapat memanggil seperti ini:
Ini contoh yang bagus .
sumber
(function($) {...}(jQuery));
bungkusnya? Saya tidak pernah mendefinisikan fungsi saya sendiri di jQuery sebelumnya, saya selalu hanya mendefinisikan fungsi dalam JavaScript lurus.$
pengenal di dalam fungsi, bahkan jika itu merujuk ke sesuatu yang lain dalam lingkup induk.Cara yang lebih sederhana untuk melakukan ini adalah dengan menggunakan metode toggleClass () jQuery
CSS
HTML
JS
sumber
Jika Anda hanya membutuhkan fungsionalitas standar sembunyikan saja dengan visibilitas: disembunyikan untuk mempertahankan tata letak saat ini, Anda dapat menggunakan fungsi panggil balik sembunyikan untuk mengubah css pada tag. Sembunyikan dokumen dalam jquery
Sebuah contoh :
Ini akan menggunakan animasi keren biasa untuk menyembunyikan div, tetapi setelah animasi selesai Anda mengatur visibilitas ke tersembunyi dan tampilan untuk memblokir.
Contoh: http://jsfiddle.net/bTkKG/1/
Saya tahu Anda tidak menginginkan solusi $ ("# aa"). Css (), tetapi Anda tidak menentukan apakah itu karena hanya menggunakan metode css () Anda kehilangan animasinya.
sumber
Inilah satu implementasi, seperti apa fungsinya
$.prop(name[,value])
atau$.attr(name[,value])
fungsinya. Jikab
variabel diisi, visibilitas diatur sesuai dengan itu, danthis
dikembalikan (memungkinkan untuk melanjutkan dengan properti lainnya), jika tidak maka akan mengembalikan nilai visibilitas.Contoh:
sumber
Setara JS murni untuk sembunyikan jQuery () / show ():
Kami menggunakan
return el
karena untuk memenuhi antarmuka "pola desing" yang lancar .Berikut ini contoh kerjanya .
Di bawah ini saya juga memberikan alternatif yang SANGAT tidak disarankan , yang mungkin lebih "mendekati pertanyaan":
tentu saja ini tidak menerapkan jQuery 'masing-masing' (diberikan dalam jawaban @JamesAllardice ) karena kami menggunakan js murni di sini.
Contoh kerja ada di sini .
sumber