hola foro!!!!
ya veran lo necesitado de ayuda que estoy!!!!
bueno. Tengo entendido que la razon por la cual exiten lenguajes de alto nivel es para que su sintaxis se acerque a la sintaxis de los lenguajes humanos. Pues bien, si quiero asignar un alerta cuando el raton pase sobre una imagen, mi razonamiento seria este: "si el raton llegara a pasar sobre la imagen, muestra al usuario un alerta". Bueno, yo lo haria asi: if(onmouseover) {alert("lo que sea");}. Sin embargo me encuentro con estos engendros de la sintaxis:
1)-bueno, entiendo la necesidad de recurrir al arbol jerarquico de nodos del DOM. Como quiera, obtengo una instruccion sencilla y funcional.
document.getElementById("foto").onmouseover = alerta;
2)-lo que no entiendo es que si con la sintaxis anterior obtengo un codigo no obtrusivo y funcional, a que viene esto? si la idea es no tocar el marcado, pues con lo anterior ya lo logre. O es que 'addEventListener' tiene un secretillo bajo la manga que lo hace diferente? me refiero a esto:
document.getElementById('travieso').addEventListen er('mouseover', funcion, false);
3)-este es el que me deja mas azorado. Simplemente no entiendo de que se trata. En el primer caso, el evento, al ser una propiedad, es decir, una variable de un objeto, lo tratamos como si fuera una variable. Y lo que yo entiendo por variable es que tiene un simbolo de igual en el medio! por lo tanto, y a juzgar por el signo de igual en el medio, se trata de una variable. . . . aunque no lo concibo de esa manera. De ser asi, seria como una variable dentro de otra variable. . . . . . que car*j*!!!!!!. Y Ademas, desde cuando document es un array?????
onmouseover = "window.document["foto"].src = uno.src";
4)-y finalmente este. Lo interpreto asi: si se cumple la escucha (esto esta raro?!) entonces al terminar de cargar la pagina lanzo la funcion. Bueno. No tiene sentido, y sospecho de que en realidad de lo que se trata es de que si fuera internet explorer, donde imagino, no debe existir soporte a esto, la instruccion se ignora. Pero en los demas exploradores se lanza la funcion. JEJE!!! solo estoy especulando y tratando de entender la logica. Pero aun asi, no veo sentido a una sintaxis tan larga teniendo a mano la primera, mucho mas simple.
if (document.addEventListener) {
document.addEventListener("DOMContentLoaded", funcion, false);
}
bueno. . . . en realidad lo que necesito es entender las diferencias, por que una manera es preferible a la otra. Y por dios, que hay con la tercer sintaxis? trato de atrapar la logica, de pensar como programador. Pero no esta muy claro. Y algo me dice que cuando lo entienda, despego!
gracias, y disculpen la chachara interminable! y si no es pedir mucho, como quedaria mi instruccion utilizando eventos dentro de una estructura de control de flujos, como la que propongo al comenzar este enredo??