Tôi biết rằng với một số hành động jQuery, chúng ta có thể thêm rất nhiều lớp vào một div cụ thể:
<div class="cleanstate"></div>
Giả sử rằng với một số lần nhấp và những thứ khác, div nhận được rất nhiều lớp
<div class="cleanstate bgred paddingleft allcaptions ..."></div>
Vì vậy, làm thế nào tôi có thể loại bỏ tất cả các lớp ngoại trừ một? Ý tưởng duy nhất tôi nghĩ ra là:
$('#container div.cleanstate').removeClass().addClass('cleanstate');
Trong khi removeClass()
giết tất cả các lớp, div bị hỏng, nhưng chỉ thêm sau đó addClass('cleanstate')
nó sẽ trở lại bình thường. Giải pháp khác là đặt thuộc tính ID với các thuộc tính CSS cơ bản để chúng không bị xóa, điều này cũng cải thiện hiệu suất, nhưng tôi chỉ muốn biết một giải pháp khác để loại bỏ tất cả ngoại trừ ".cleanstate"
Tôi hỏi điều này bởi vì, trong script thực, div phải chịu nhiều thay đổi khác nhau của các lớp.
" "
(khoảng trắng) và quyết định cho từng lớp xem có xóa nó hay không?