textcontent html innertext nodevalue

html - textcontent jquery



¿Cómo elijo entre innerText o nodeValue? (2)

Para elementos con contenido de texto, son los mismos. Consulte este artículo de MDC para obtener información sobre nodeValue .

De este artículo :

Si el elemento no tiene subelementos, solo texto, entonces (normalmente) tiene un nodo secundario, al que se accede como ElemRef.childNodes[0] . En tal caso preciso, los estándares web de W3C equivalentes a ElemRef.innerText son ElemRef.childNodes[0].nodeValue .

Cuando necesito cambiar un texto dentro de un elemento span, cuál debo usar y cuál es la diferencia:

var spnDetailDisplay=document.getElementById(''spnDetailDisplay''); spnDetailDisplay.innerText=sDetail;

o

var spnDetailDisplay=document.getElementById(''spnDetailDisplay''); spnDetailDisplay.childNodes[0].nodeValue=sDetail;


  • nodeValue es la recomendación estándar W3C.
  • innerText es específico de Internet Explorer , no el estándar. Y:
    • No devuelve el contenido de <script> y <style> .
    • Reconocimiento de estilo, no devuelve texto de elementos ocultos.
    • La conciencia de estilo CSS, provocará un reflujo.

En general, son similares, pero si necesita el mejor rendimiento, debe usar nodeValue .

Enlace para prueba de rendimiento: https://jsperf.com/read-innerhtml-vs-innertext-vs-nodevalue-vs-textcontent/13