2010-10-11 10 views

Respuesta

1

Devuelve un valor falso (aunque no realmente false) si no está definido.

Esta es una prueba estándar feature (AKA object) detection.

Puede cambiarlo implementando su propia versión. Más generalmente lo usarás en una función de contenedor con el } else { que tiene un manejo específico de IE.

7

if (document.addEventListener) evalúa a false si no hay addEventListener método en document. Esta comprobación generalmente se realiza para ver si puede usar este método para adjuntar evento al elemento DOM (funciona en la mayoría de los navegadores excepto en IE).

¿hay alguna manera de que podamos cambiar esto?
Esta pregunta no la entiendo del todo. Probablemente, desee algo como document.attachEvent('onload', callback); para IE. Realmente no se puede agregar el método addEventListener para documentar (bueno, tal vez puedas, pero no tendría sentido).

Docs for addEventListener

+0

quiero decir, ¿hay algo que pueda hacer para agregar este método al documento? – Miroo

+0

@Miroo No, pero puede usar la forma específica de IE para manejar eventos. (como 'onload' en mi ejemplo) –

+0

y funciona conmigo en IE9 pero en una aplicación diferente bajo framework 4 – Miroo

2

Si este fragmento de código devuelve false, esto significa que la propiedad addEventListener método no se admite por el navegador. Esta es la case for Internet Explorer, donde attachEvent se utiliza en su lugar:

if (document.addEventListener){ 
    document.addEventListener(...); 
} else if (document.attachEvent){ 
    document.attachEvent(...); 
} 
+0

Estoy tratando de usar esto para agregar un thumbBarButtons en IE9 e intenté el evento Attachevent y no funcionó: S y todos los ejemplos del código no mencionaron que podemos usarlo para adjuntar el evento 'msthumbnailclick' – Miroo

+0

IE9 supports addEventListener – kennebec

Cuestiones relacionadas