Я сделал append, используя следующий код, где menuElement
- это id div и appendStr ="<span class="bubbleClass"></span>";
$(menuElement).append(appendStr);
Однако, когда я пытаюсь $(menuElement+ ".bubbleClass").css("background-color", "red");
он не работает.
Я хочу, чтобы конкретный идентификатор div, хранящийся в переменной menuElement, отражался.
Поскольку вы динамически добавили элемент в DOM, вам нужно использовать .find()
для доступа к нему:
$(menuElement).append(appendStr).find('.bubbleClass').css({
backgroundColor:'red',
display:'inline'
});
Это пример, основанный на ограниченном коде, который вы .find()
, но использование .find()
- это ключ.
Отредактировано, чтобы включить display
CSS, которое вы сказали, что вам нужно добавить.
display
CSS. и рад, что это сработало, но если мой ответ помог, пожалуйста, поставьте галочку. :)
menuElement должен быть селектором jQuery типа "#menuElement"
потому что он завернут внутри объекта jQuery.
$ ("# menuElement +.bubbleClass"). css ("background-color", "red");
Причина, по которой ваш код терпит неудачу, заключается в том, что ваш селектор выглядит следующим образом: #someID.bubbleClass
Другими словами, он ищет bubbleClass
класса bubbleClass
для самого bubbleClass
menuElement
, а не для его дочерних menuElement
.
Добавьте пробел перед .
и он должен работать нормально.
bubbleClass
нет содержимого ... поэтому вы не можете видеть его результат. Попробуйте добавить текст в элемент.