Saya sedang membangun peta yang dapat diseret yang ketika peta diseret elemen diberi atribut 'kiri' dan 'atas' dengan nilai untuk masing-masing begitu ...
<div class="map" style="top:200px; left:100px;">Map</div>
Saya memiliki tombol yang ingin saya hapus atribut atas dan kiri dari gaya inline pada div ketika diklik, Apakah ini mungkin dengan jquery?
' '
tidak dihitung sebagai nilai kosong saja''
$('selector').prop('style'); cssObject.removeProperty('top'); cssObject.removeProperty('left');
Jawaban:
Nilai default untuk CSS
top
danleft
sedangauto
, jadi mengaturnya ke yang mungkin setara tergantung pada apa yang Anda coba lakukan:Anda juga memiliki opsi untuk menghapus
style
atribut sepenuhnya :Namun, jika Anda menggunakan komponen jQuery UI lainnya, itu mungkin memerlukan gaya sebaris yang tidak ingin Anda hapus, jadi lanjutkan dengan hati-hati di sana.
sumber
Jika Anda ingin secara khusus menghapus atribut atas dan kiri dan meninggalkan yang lain, Anda dapat melakukan ini:
Atau, padanan yang lebih pendek:
sumber
.css('left', undefined);
tidak mengubah apa pun. Melewati nol juga tidak melakukan apa-apa. Tetapi.css('left', false);
menghapus properti itu.Anda dapat menghapus semua konten dalam
style
atribut dengan melakukan:Dan Anda dapat menghapus spesifik
style
dengan melakukan:sumber
Cukup setel properti CSS dengan string kosong, misalnya dengan kode berikut:
Lihat Dokumentasi jQuery di CSS .
sumber
Dokumen memberi Anda pendekatan saat ini, yang disarankan untuk apa yang ingin Anda capai, yang sering kali dapat menghemat waktu Anda karena Anda tidak harus membaca bolak-balik perang api pada stack overflow (tidak peduli seberapa menyenangkan / mencerahkan yang mungkin terjadi !).
sumber
Per laporan bug JQuery ini
tidak bekerja secara konsisten di browser berbasis Webkit. Misalnya, saya menemukan masalah ini di iOS 6.1. Cara mengatasinya adalah dengan menggunakan:sumber
Jika Anda ingin menghapus semua itu, Anda bisa melakukannya
sumber
maka jika Anda ingin menghapus css prop (s):
sumber
Menurut pendapat saya, cara terbersih adalah menghapus properti sepenuhnya dari elemen CSSStyleDeclaration , alih-alih menimpanya dengan semacam nilai nol / nol / standar:
sumber
Hapus dengan aman dengan plugin ini!
$ ('myDiv'). removeCss ('color');
sumber
Ada beberapa gaya yang tidak dapat dengan mudah dihapus. (Meluap ke pikiran)
Solusinya adalah membuat 2 kelas yang berbeda dan menambah / menghapus yang berisi gaya yang Anda inginkan.
BUKAN solusi terbaik untuk properti gaya yang dapat dengan mudah dihapus / dinonaktifkan.
sumber
Untuk menghapus gaya css, berikan string kosong ke gaya
pada kasus ini
sumber
sumber