Autor Tema: Problemas con metodo JavaScript document.getElementById()  (Leído 4878 veces)

ramonmantilla

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 1
    • Ver Perfil
Buen Dia Estimados

Primero les doy las gracias por la excelente pagina. Leyendo sus cursos he logrado aprender lo basico de html, css y ahora javascript.
El motivo de mi consulta es sobre un problema que se me presenta con la sentencia document.getElementById().

En un archivo html tengo la siguiente sentencia:
<h1 id='tex1' name='texto1' class="brillante" onMouseOver='cambio();'>Portal Web <span class="destacado">aprenderaprogramar.com</span>, para aprender </h1>

En un archivo externo .js tipeo las siguientes sentencias:
document.write(document.getElementsByName('texto1').nodeName);
document.write(document.getElementsByTagName('h1').nodeType);
document.write(document.getElementsByClassName('brillante').nodeName);// NO FUNCIONA EN EXPLORER
document.write(document.querySelectorAll('#tex1').nodeValue);
document.write(document.getElementById('tex1').nodeValue); //NO FUNCIONA EN NINGUN NAVEGADOR

Donde la 3era sentencia no funciona en explorer, mientras que la ultima no me funciona en ningun navegador (opera, safary, ie, chrome o firefox) generandome un error que dice: Error de Type No puede convertir en objeto.
Si la ultima sentencia la escribo asi:
document.write(document.getElementById('tex1');
No genera error, pero si le anexo .nodeValue o .nodeType o .nodeName si lo genera.

Por otro lado. Como hago para que cuando escribo
document.write(document.getElementsByTagName('h1').nodeValue = `texto cualquiera`;
me permita hacer cambios en forma dinamica en la pagina ya que no genera ningun cambio.

Muchas Gracias

Ramon Mantilla
armantilla@gmail.com

César Krall

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2078
  • No vales por lo que dices, sino por lo que haces
    • Ver Perfil
    • aprenderaprogramar.com
Re:Problemas con metodo JavaScript document.getElementById()
« Respuesta #1 en: 10 de Mayo 2014, 22:05 »
Hola Ramón, para poder revisar el problema me harían falta los códigos completos. Puedes pegarlos en el foro usando el botón # del editor y pegando el código entre las etiquetas [ code ] ... [ / code] ó bien ponerlo como archivos adjuntos.

Lo primero que te puedeo decir es que document.getElementsByClassName('brillante').nodeName no parece una sintaxis correcta. De acuerdo con la definición de este método, lo que te devuelve es un array, pero tú aquí no estás indicando cuál es el índice del elemento del array que quieres invocar. No puedes invocar un elemento de un array sin poner su índice, de todas formas tendría que ver el código completo. Saludos.
Responsable de departamento de producción aprenderaprogramar.com

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".