Necesito una forma de determinar el tipo de elemento HTML en JavaScript. Tiene la identificación, pero el elemento en sí podría ser un div, un campo de formulario, un fieldset, etc. ¿Cómo puedo lograr esto?¿Cómo puedo determinar el tipo de elemento HTML en JavaScript?
Respuesta
nodeName
es el atributo que está buscando. Por ejemplo:
var elt = document.getElementById('foo');
console.log(elt.nodeName);
Tenga en cuenta que nodeName
devuelve el nombre del elemento en mayúsculas y sin los paréntesis angulares, lo que significa que si usted quiere comprobar si un elemento es un elemento <div>
que podría hacerlo de la siguiente manera:
elt.nodeName == "DIV"
Si bien esto no le daría los resultados esperados:
elt.nodeName == "<div>"
¿Qué hay de element.tagName
?
Véase también tagName
docs on MDN.
de acuerdo con las marcas de tiempo que me ganó por menos de 1 segundo! – eyelidlessness
Incluso logré arrojar algo de inglés extraño. ¡Crikey! –
de QuirksMode: Mi consejo es no utilizar tagName en absoluto. nodeName contiene todas las funcionalidades de tagName, más algunas más. Por lo tanto, nodeName es siempre la mejor opción. – bdukes
- 1. Determinar si el contenido de un elemento HTML se desborda
- 2. ¿Cómo puedo determinar las posiciones de "nuevas líneas" en el texto de un elemento HTML?
- 3. ¿Puedo cambiar el ID de un elemento HTML utilizando Javascript?
- 4. ¿Cómo puedo determinar el tipo de referencia bendecida en Perl?
- 5. ¿Cómo puedo determinar el tamaño de un tipo en Haskell?
- 6. obtener el elemento html dentro de otro elemento en javascript
- 7. ¿Cómo puedo registrar un elemento HTML como un objeto JavaScript?
- 8. ¿Cómo puedo determinar el número de línea actual en JavaScript?
- 9. cómo imprimir todo el elemento HTML en JavaScript?
- 10. ¿Cómo uso la reflexión para determinar el tipo anidado (tipo de elemento) de una matriz?
- 11. ¿Cómo puedo determinar el tipo de repositorio SVN que tengo?
- 12. ¿Cómo puedo determinar el tipo de mimo de un documento utilizando solo javascript?
- 13. ¿Cómo cambio el ID de un elemento HTML con JavaScript?
- 14. ¿Cómo puedo determinar SelectedValue de RadioButtonList en JavaScript?
- 15. Cómo determinar si el elemento es el último o el primer elemento secundario de los elementos principales en javascript/jquery?
- 16. Cómo mover el elemento HTML
- 17. ¿Cómo puedo determinar qué tipo de UIControlEvents causó un UIEvent?
- 18. JavaScript: Haz clic en el elemento
- 19. código javascript para resaltar un elemento html
- 20. En GWT, ¿cómo puedo obtener todos los atributos de un elemento en el HTML DOM?
- 21. html Identificación del elemento como variable javascript
- 22. atributo personalizado en el elemento HTML
- 23. ¿Cómo determinar el tiempo en el sitio en Javascript?
- 24. Cómo calcular el índice z efectivo de un elemento HTML
- 25. elemento de inserción en javascript matriz y tipo
- 26. ¿Determinar el nombre de dominio en JavaScript?
- 27. JavaScript en iOS: abrir un elemento de selección HTML
- 28. ¿Cuál es el elemento actual en Javascript?
- 29. ¿Cómo descomprimir html en javascript?
- 30. ¿Cómo puedo "restablecer" estilos para un elemento HTML dado?
Recomiendo hacerlo así: if (elt.nodeName.toLowerCase() === "div") {...} De esta manera, si por alguna razón ya no se devuelve en letras mayúsculas (minúsculas) o mixto), no tendrá que cambiarlo y este código seguirá funcionando bien. – TheCuBeMan
En respuesta a @TheCuBeMan, usar toLowerCase() significa que también debe asegurarse de que existe nodeName (si es posible, elt no es, de hecho, un elemento): 'if (elt.nodeName && elt.nodeName.toLowerCase () === 'div') {...} ' –