Quando o senhor trabalha em um site que depende de um determinado kit de ferramentas JavaScript, acaba, sem querer, tentando resolver problemas dentro dos limites do kit de ferramentas e não da linguagem. Esse foi o caso quando tentei envolver o texto (possivelmente incluindo elementos HTML) com um DIV . Imagine o seguinte HTML:



This is some text and <a href="">a link</a>.


E digamos que o senhor queira transformar isso no seguinte:



<div>This is some text and <a href="">a link</a>.</div>


O senhor poderia fazer um simples .innerHTML simples no pai, mas o problema com isso é que todas as conexões de eventos seriam cortadas porque o innerHTML cria novos elementos a partir do HTML. Que droga. Portanto, é hora de voltar ao JavaScript básico – glória para alguns e fracasso para outros. Veja como fazer isso:



var newWrapper = document.createElement('div');
while(existingParent.firstChild) {
	newWrapper.appendChild(existingParent.firstChild);
}


Usando um for loop não funcionará porque o childNodes é uma coleção de nós ativos, portanto, movê-la afetaria os índices. Em vez disso, podemos fazer um loop contínuo firstChild contínuas no pai até que um valor falso seja retornado e, então, o senhor saberá que todos os filhos foram movidos!

  • 39 Shirts & Deixando a Mozilla

    Em 2001, eu tinha acabado de me formar em uma escola de ensino médio de uma cidade pequena e estava indo para uma faculdade de uma cidade pequena. Encontrei-me no pitoresco laboratório de informática, onde os computadores de baixa qualidade apresentavam dois navegadores: Internet Explorer e Mozilla. Foi nesse laboratório que me apaixonei…

  • Conquistando a síndrome do impostor

    Há dois anos, documentei minha luta contra a Síndrome do Impostor e a resposta foi imensa. Recebi mensagens de apoio e de comiseração de novos desenvolvedores da Web, engenheiros veteranos e até mesmo de pessoas de todos os níveis de experiência em outras profissões. Até me peguei lendo a postagem…

  • Chris Coyier&#8217;s Demos favoritos do CodePen II

    Olá a todos! Antes de começarmos, gostaria de dizer que é muito difícil escolher os favoritos do CodePen. Não porque, como cofundador do CodePen, eu me sinta como um pai escolhendo o filho de que mais gosta (RUDE). Mas porque há tantos…

  • Crie gráficos dinamicamente usando o MooTools MilkChart e o Google Analytics