2013-12-23 2 views
-1

Я пытаюсь понять, как работает jQuery wrap(). В documentation я нахожу это:Как использовать обертку jQuery в переменных jQuery?

Описание: Оберните структуру HTML вокруг каждого элемента в наборе согласованных элементов.

Я видел их примеры. Я проверил его с элементами со страницы. Он работает нормально, но мой вопрос: Могу ли я использовать wrap() для переменных jQuery?

У меня есть следующий код теста:

var d = $("<div class='one'>"); 
d.html("Hi, I am <strong>strong</strong>"); 

console.log("Before wrapping: ", d.html()); 
d.wrap("<div class='new'></div>"); 

console.log("After wrapping: ", d.html()); 

В этом выходы:

Before wrapping: Hi, I am <strong>strong</strong>

After wrapping: Hi, I am <strong>strong</strong>

Первый Ou tput верна. Для второго я ожидал:

After wrapping: <div class='one'>Hi, I am <strong>strong</strong></div>

(потому что он был завернут с <div class='new'></div>)

Что я делаю неправильно?

JSFIDDLE

ответ

1

Даже если вы оберточная d с другим элементом d еще относитесь к старому набору элементов, если вы хотите иметь обернутый элемент HTML, то вы должны получить доступ к родителю d, а затем получить HTML как

console.log("Parent: ", d.parent().html()); 

Демо: Fiddle

Смежные вопросы