Foros del Web » Programando para Internet » Javascript »

Ando liado con attachEvent.

Estas en el tema de Ando liado con attachEvent. en el foro de Javascript en Foros del Web. siguiendo el ejemplo de la Funcion 5, en esta pagina de "maestrosdelweb": http://www.maestrosdelweb.com/editor...en-javascript/ No me funca el ejemplo, y no entiendo muy bien. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); ...
  #1 (permalink)  
Antiguo 23/12/2011, 16:24
Avatar de ZoroRoronoa  
Fecha de Ingreso: marzo-2011
Ubicación: California, USA
Mensajes: 824
Antigüedad: 13 años, 1 mes
Puntos: 116
Ando liado con attachEvent.

siguiendo el ejemplo de la Funcion 5, en esta pagina de "maestrosdelweb":
http://www.maestrosdelweb.com/editor...en-javascript/

No me funca el ejemplo, y no entiendo muy bien.

Código Javascript:
Ver original
  1. <div id=”frases”>
  2.       <div>Hola mundo!</div>
  3.       <div>Foo bar</div>
  4.       <div>Lorem Ipsum</div>
  5. </div>
  6. <script type=”text/javascript”>
  7. // Creamos la funcion para añadir eventos
  8. function nuevo_evento(elemento, evento, funcion) {
  9.       if (elemento.addEventListener) {
  10.             elemento.addEventListener(evento, function, false);
  11.       } else {
  12.             elemento.attachEvent(“on”+evento, function);
  13.       }
  14. }
  15. // Obtenemos los elementos DIV a los que queremos añadir nuestro evento onclick
  16. var divs = document.getElementById(“frases”).getElementsByTagName(“DIV”);
  17. // Recorremos todos los divs
  18. for (var i=0; i<divs.length; i++) {
  19.       // Añadimos el evento onclick al div
  20.       nuevo_evento(divs[i], “click”, function(){
  21.             // Hacemos que muestre el contenido del DIV
  22.            alert(this.innerHTML);
  23.       });
  24. }
  25. </script>

Lo he leido y analizado, y con mis pocos conocimientos no logro dar, con el porque.
Alguien que abatesca el tema, ojala me ayude en saber el funcionamiento y/o algun ejemplo sobre esta funcion, porque no me queda claro.

Gracias.
__________________
Programador jQuery & PHP
  #2 (permalink)  
Antiguo 23/12/2011, 16:39
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Ando liado con attachEvent.

buenas,
veo que el código tiene un error. y es que esta usando una palabra clave equivocadamente. estoy seguro que fue un despiste.
Código:
function nuevo_evento(elemento, evento, funcion) {
      if (elemento.addEventListener) {
            elemento.addEventListener(evento, function, false);
      } else {
            elemento.attachEvent(“on”+evento, function);
      }
}
las palabras marcadas en negrita, el primero dice funcion, el cual esta bien. pero los otros dos dice function. entonces, primero function es una palabra reservada y segundo no representa el parámetro funcion. debes cambiar esa parte para que refleje el parámetro adecuado.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 23/12/2011, 16:39
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Ando liado con attachEvent.

el problema son las comillas y el uso de (function) que es una palabra reservada

upppsss, sorry!!
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #4 (permalink)  
Antiguo 23/12/2011, 17:06
Avatar de ZoroRoronoa  
Fecha de Ingreso: marzo-2011
Ubicación: California, USA
Mensajes: 824
Antigüedad: 13 años, 1 mes
Puntos: 116
Respuesta: Ando liado con attachEvent.

Imagine que serian las comillas, pero sobre function, jamas tuve ni la minima sospecha.
con bajos conocimientos y con tan solo una letra de diferencia (function), no lo note.

Gracias a ambos, listo..!!
__________________
Programador jQuery & PHP

Etiquetas: funcion, html
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:22.