"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como posso criar elementos DOM com eficiência usando jQuery?

Como posso criar elementos DOM com eficiência usando jQuery?

Publicado em 23/12/2024
Navegar:361

How Can I Efficiently Create DOM Elements Using jQuery?

Criando elementos DOM com jQuery

Em seu desejo de aprimorar seu código JavaScript, você está curioso para aproveitar a funcionalidade do jQuery para simplificar a manipulação de DOM .

jQuery oferece maneiras alternativas de criar elementos DOM, como você notou com $.create("div"). No entanto, essa abordagem não faz parte da API principal do jQuery e pode nem sempre ser confiável.

Para uma solução mais eficiente e padronizada, considere o seguinte:

this.$OuterDiv = $('<div></div>')
    .hide()
    .append($('<table></table>')
        .attr({ cellSpacing : 0 })
        .addClass("text")
    )
;

Este código conciso realiza o mesmo que seu JavaScript original:

  • Criando um elemento
    usando $('
    ).
  • Ocultando-o com .hide().
  • Anexando um elemento com $.append(), definindo suas propriedades e adicionando um class.

    Resultados de benchmarking

    Em relação ao desempenho de diferentes métodos de criação de elementos, um benchmark revelou que document.createElement é o mais rápido. No entanto, as diferenças de tempo entre os métodos são mínimas nas versões modernas do jQuery (por exemplo, 3 milissegundos por mil elementos).

    Atualizado para jQuery 1.7.2

    O benchmark foi atualizado com jQuery 1.7.2 e está disponível em http://jsben.ch/#/ARUtz para exploração adicional e resultados de crowdsourcing.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3