Чтобы удалить все классы из элемента, кроме одного в JavaScript, вы можете использовать следующие методы:
Метод 1: использование свойства classList и циклический просмотр всех классов, чтобы удалить их по отдельности, кроме нужного класса.
function removeAllClassesExceptOne(element, classNameToKeep) {
var classList = element.classList;
while (classList.length > 0) {
var currentClass = classList.item(0);
if (currentClass !== classNameToKeep) {
element.classList.remove(currentClass);
}
}
}
Использование:
var element = document.getElementById("yourElementId");
removeAllClassesExceptOne(element, "classToKeep");
Метод 2. Использование регулярных выражений для удаления всех классов, кроме нужного.
function removeAllClassesExceptOne(element, classNameToKeep) {
element.className = element.className.replace(
new RegExp("(\\s|^)(?!"+classNameToKeep+"\\s|$)[^\\s]*", "g"),
""
);
}
Использование:
var element = document.getElementById("yourElementId");
removeAllClassesExceptOne(element, "classToKeep");
Это два распространенных метода удаления всех классов в JavaScript, кроме одного. Вы можете выбрать тот, который лучше всего соответствует вашим потребностям.