addClass / removeClass по имени класса (не ID) - PullRequest
3 голосов
/ 19 мая 2011

Я хотел бы знать, как удалить класс по имени класса с помощью jquery. Я знаю, как это сделать по ID. Я пытаюсь это:

var ButtonNumber = document.querySelectorAll(".ButtonStyleClicked");

for (var i = 0; i < ButtonNumber.length; i++) {
     var ClassName = ButtonNumber[i];
     $('.' + ClassName).removeClass('ButtonStyleClicked');

    } 

Удаление класса по идентификатору работает так:

var ID = document.getElementById(Whatever);

$('#' + ID).removeClass('ButtonStyleClicked');

Решил проблему:

querySelectorAll снимал элемент DIV. Поэтому я вставил только результат в класс удаления, и это сработало:

var ButtonNumber = document.querySelectorAll(".ButtonStyleClicked");

for (var i = 0; i < ButtonNumber.length; i++) {
     var ClassName = ButtonNumber[i];
     $(ClassName).removeClass('ButtonStyleClicked');

    } 

Ответы [ 2 ]

5 голосов
/ 19 мая 2011

Пытаетесь ли вы найти элементы с классом ButtonStyleClicked для удаления этого класса?

$('.ButtonStyleClicked').removeClass('ButtonStyleClicked');

(Если вам нужно сохранить имя класса в переменной:)

var className = 'ButtonStyleClicked';
$('.' + className).removeClass(className);
0 голосов
/ 19 мая 2011

Я бы сказал, что вы можете использовать любой селектор.Допустим,

var className = "myClass";
$("."+className).removeClass(className);

Вы можете использовать столько элементов и комбинаций селектора, сколько необходимо.Например;в случае, если вы просто хотите удалить определенный класс из тегов <p>, которые являются потомками тега <div> с идентификатором «myDiv», это будет выглядеть примерно так:

$("div#myDiv p."+className).removeClass(className);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...