2011-10-12 5 views
6

Escribo un complemento a un CMS (umbraco) y deseo adjuntar un cuadro de diálogo de advertencia a varias acciones en la página, una de estas acciones es hacer clic un enlace (enlaces javascript), en la mayoría de los navegadores el siguiente código funciona bienEn IE, el evento onbeforeunload se activa para los enlaces que no descargan la página

$(".propertypane").delegate("a, a div", "click", function() { window.onbeforeunload = confirmNavigateAway; }); 

el siguiente es un problema en IE porque el IE parece desencadenar onbeforeunload evento cuando se hace clic en cualquier enlace, a pesar de que el enlace no está navegando lejos .

He creado un ejemplo aquí: http://jsfiddle.net/DETTG/8/

Nota: no tengo control sobre los controles ajax dentro de la propertypane, que están escritos por terceros.

Respuesta

1

Quizás esto page te ayudará?

+0

información a la mano, sin embargo, no va a ayudarme porque yo no controlo cómo se construye la etiqueta de anclaje. – Myster

1

Si quita "href", funcionará. Pero luego necesitaría diseñarlo como un elemento de enlace y agregar el atributo onclick si desea ejecutar una función. Esta es la versión actualizada: http://jsfiddle.net/DETTG/34/

<a onclick="alert('do some ajax');" style="color:blue; text-decoration:underline; cursor:pointer">javascript</a> 
+1

No creo que esta sea una solución para mí, porque el html y el JS son generados por controles de terceros. (Pensé en eliminar el href del lado del cliente, pero potencialmente rompería la funcionalidad de terceros). – Myster

Cuestiones relacionadas