Добавьте div в другой div, затем выполните некоторые действия, а затем удалите добавленный div. Как?

#jquery

#jquery

Вопрос:

 $div = $('<div>Here is my div!</div>');
$('#bar').append($div.html());
//do some actions
$div.remove();
  

Но добавленный div не удаляется?

Как я могу это сделать?

Ответ №1:

Вы клонируете HTML

Вы должны опустить .html() вызов, потому что вы клонируете $div HTML.

 // always use a "var" in front of non-global variables
var div = $("<div>Here is my div!</div>");

// just add your jQuery element here. No call to .html()
$("#bar").append(div);

//do some actions

div.remove();
  

Но я надеюсь, что выполнение некоторых действий — это длительная операция с точки зрения времени или взаимодействия с пользователем, иначе я не знаю, для чего предназначена эта функциональность (создание, добавление, некоторые изменения и удаление).

Комментарии:

1. @Blankasaurus: Да, это сбивало с толку, потому что я не могу видеть, используется ли функция jQuery или это что-то другое… Также обратите внимание на объявление локальной переменной в первой строке. 🙂

2. Я предпочитаю отмечать объектную переменную jQuery символом $ — обычно это мне очень помогает, на самом деле. Я не вижу никакого зла, делающего это.

3. @Kirzilla: Делайте все, что вам нравится, пока это не нарушает код. Я удалил эти $ для удобства чтения. Но ваше соглашение об именовании имеет смысл, хотя многие, вероятно, будут жаловаться на это.