Bagaimana saya bisa menyembunyikan tautan 'Edit' setelah saya menekannya? dan juga bisakah saya menyembunyikan teks "lorem ipsum" ketika saya menekan edit?
<script type="text/javascript">
function showStuff(id) {
document.getElementById(id).style.display = 'block';
}
</script>
<td class="post">
<a href="#" onclick="showStuff('answer1'); return false;">Edit</a>
<span id="answer1" style="display: none;">
<textarea rows="10" cols="115"></textarea>
</span>
Lorem ipsum Lorem ipsum Lorem ipsum Lorem ipsum
</td>
javascript
nortaga
sumber
sumber
return false
dionclick
?Anda juga dapat menggunakan kode ini untuk menampilkan / menyembunyikan elemen:
Catatan Perbedaan antara
style.visibility
danstyle.display
ketika menggunakan visibilitas: disembunyikan tidak seperti tampilan: tidak ada, tag tidak terlihat, tetapi ruang dialokasikan untuk itu pada halaman. Tag diberikan, itu tidak terlihat di halaman.Lihat tautan ini untuk melihat perbedaannya.
sumber
.hidden
? Apakah Anda sekarang berperilaku?Saya ingin menyarankan Anda opsi JQuery .
Sebagai contoh:
sumber
Saya menyarankan ini untuk menyembunyikan elemen (seperti yang orang lain sarankan):
Tetapi untuk membuat elemen terlihat, saya menyarankan ini (alih-alih display = 'blok'):
Alasannya adalah bahwa menggunakan display = 'block' menyebabkan margin / spasi tambahan di sebelah elemen yang terlihat di IE (11) dan Chrome (Versi 43.0.2357.130 m) pada halaman yang sedang saya kerjakan.
Saat Anda pertama kali memuat halaman di Chrome, elemen tanpa atribut style akan muncul seperti ini di inspektur DOM:
Menyembunyikannya menggunakan JavaScript standar membuatnya seperti ini, seperti yang diharapkan:
Membuatnya terlihat lagi menggunakan display = 'blok' mengubahnya menjadi ini:
Yang tidak sama dengan aslinya. Ini bisa sangat tidak membuat perbedaan dalam sebagian besar kasus. Tetapi dalam beberapa kasus, itu memang memperkenalkan kelainan.
Menggunakan display = '' mengembalikannya ke keadaan semula di inspektur DOM, jadi sepertinya pendekatan yang lebih baik.
sumber
block
opsi. bertanya-tanya apa nilai default dari prop ini: pAnda dapat menggunakan properti elemen yang tersembunyi:
sumber
display=""
nilai yang berbeda saat ini.display: none;
dll.display
properti diatur.display
properti ke elemen ketika tidak memilikihidden
atribut, targetkan seperti ini:.my-el:not([hidden]) { display: flex }
Anda harus memikirkan JS untuk perilaku, dan CSS untuk permen visual sebanyak mungkin. Dengan mengubah sedikit HTML Anda:
Anda dapat beralih dari satu tampilan ke tampilan lain hanya menggunakan aturan CSS:
Dan kode JS yang beralih di antara dua kelas
sumber
Meskipun pertanyaan ini telah dijawab berkali-kali sebelumnya, saya pikir saya akan menambahkannya dengan jawaban yang lebih lengkap dan solid untuk pengguna masa depan. Jawaban utama memang menyelesaikan masalah, tetapi saya percaya mungkin lebih baik untuk mengetahui / memahami beberapa cara untuk menunjukkan / menyembunyikan sesuatu.
.
Mengubah tampilan menggunakan css ()
Ini adalah cara saya biasa melakukannya sampai saya menemukan beberapa cara lain ini.
Javascript:
Pro:
Cons:
$("#element_to_hid").css("display", "inline");
jika tidak maka default akan kembali ke "block" atau apa pun yang akan dipaksa masuk.Contoh: https://jsfiddle.net/4chd6e5r/1/
.
Mengubah tampilan menggunakan addClass () / removeClass ()
Saat menyiapkan contoh untuk yang satu ini, saya benar-benar menemui beberapa kekurangan pada metode ini yang membuatnya sangat tidak bisa diandalkan.
Css / Javascript:
Pro:
$(".hidden")
.Cons:
Contoh: https://jsfiddle.net/476oha8t/8/
.
Mengubah tampilan menggunakan toggle ()
Javascript:
Pro:
Cons:
Contoh: https://jsfiddle.net/cxcawkyk/1/
.
Mengubah tampilan menggunakan hide () / show ()
Javascript:
Pro:
Cons:
Contoh: https://jsfiddle.net/k0ukhmfL/
.
Secara keseluruhan, saya akan mengatakan yang terbaik untuk menjadi hide () / show () kecuali Anda secara spesifik membutuhkannya untuk menjadi toggle. Saya harap Anda menemukan informasi ini bermanfaat.
sumber
$("#element_to_hide").hidden = true/false
Cukup buat sembunyikan dan tunjukkan metode Anda sendiri untuk semua elemen, sebagai berikut
Setelah ini, Anda dapat menggunakan metode dengan pengidentifikasi elemen biasa seperti dalam contoh ini:
atau:
sumber
Saya merekomendasikan Javascript, karena relatif cepat dan lebih lunak.
sumber
Jika Anda menggunakannya dalam tabel, gunakan ini: -
sumber
Vanilla JS untuk Kelas dan ID
Dengan ID
Berdasarkan Kelas (elemen tunggal)
Menurut Kelas (Banyak elemen)
sumber