Método wrap

O método wrap encapsula elementos em uma tag especificada.

Sintaxe

O parâmetro do método pode ser texto (possivelmente com tags), um elemento DOM ou um objeto jQuery:

javascript.wrap(com o que encapsular);

Desta forma, os elementos selecionados são encapsulados pelo conteúdo, que será retornado por uma função personalizada. A função é chamada separadamente, para cada um dos elementos selecionados, aceitando como parâmetro a posição do elemento no conjunto:

javascript.wrap(function(posição no conjunto));

Exemplo

Vamos encapsular todos os parágrafos com a classe www na tag div:

html<p class="www">text</p>
<p class="www">text</p>
<p class="www">text</p>
<p>text</p>
javascript$('.www').wrap(document.createElement('div'));

O código HTML ficará assim:

html<div><p class="www">text</p></div>
<div><p class="www">text</p></div>
<div><p class="www">text</p></div>
<p>text</p>

Exemplo

Como parâmetro, pode-se passar não apenas o nome da tag, mas também a seguinte construção:

html<p class="www">text</p>
<p class="www">text</p>
<p class="www">text</p>
<p>text</p>
javascript$('.www').wrap('<div></div>');

O código HTML ficará assim:

html<div><p class="www">text</p></div>
<div><p class="www">text</p></div>
<div><p class="www">text</p></div>
<p>text</p>

Exemplo

Na tag de abertura, pode-se escrever quaisquer atributos, e o encapsulamento será feito junto com esses atributos. Vamos encapsular os parágrafos com a classe www em uma div com a classe zzz:

html<p class="www">text</p>
<p class="www">text</p>
<p class="www">text</p>
<p>text</p>
javascript$('.www').wrap('<div class="zzz"></div>');

O código HTML ficará assim:

html<div class="zzz"><p class="www">text</p></div>
<div class="zzz"><p class="www">text</p></div>
<div class="zzz"><p class="www">text</p></div>
<p>text</p>

Veja também