DarrellStanding
@DarrellStanding
Учусь Front-end разработке

Почему так не работает в jQuery?

Почему в jQuery нельзя присвоить класс переменной в которой был создан элемент?
А вот когда элемент выбран через $(".myClass")... тогда все работает.

var buttonsWrapper = document.createElement("div");
        buttonsWrapper.addClass("buttons");
  • Вопрос задан
  • 336 просмотров
Решения вопроса 3
bootd
@bootd Куратор тега CSS
Гугли и ты откроешь врата знаний!
Потому что методы jquery работают, только с объектом jquery. Т.е. прибавлять класс нужно так, как вы указали в описании $(".myClass").addClass('someClass');.

$(".myClass") - это jquery объект, только с ним jquery и может работать.

В вашем же случае нужно написать так:
var buttonsWrapper = $("<div />", {
'class': 'buttons'
});

Переменная будет хранить созданный div с указанным классом buttons
Ответ написан
Комментировать
L0k1
@L0k1
$(buttonsWrapper).addClass("buttons");
тамушта .addClass - это метод, который ты пытаешься вызвать у дом элемента а не у jquery объекта
Ответ написан
Комментировать
dpigo
@dpigo
Front-end developer
Потому что addClass это метод jQuery, a document.createElement - нативный метод.
var buttonsWrapper = document.createElement("div");
$(buttonsWrapper).addClass("buttons");
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@tommy_13
buttonsWrapper.classList.add('buttons')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
01 дек. 2024, в 23:06
1000 руб./за проект
01 дек. 2024, в 22:49
1 руб./за проект
01 дек. 2024, в 21:50
1000 руб./в час