2009-05-28 8 views
1

ci-dessous fonction fonctionne très bien pour IE, mais ne fonctionne pas pour Mozilla et d'autres navigateursfonction Javascript ne fonctionne pas dans Mozilla

function CloseSession() {   
    alert("Inside Close"); 
     if ((window.event.clientX < 0) || (window.event.clientY<0)) { 
     alert("Inside Events"); 
     location.href = '/forms/sessionkill.aspx'; 
     }  
    } 

Ce que je suis en train de faire est, j'ai un bouton sur une page après avoir cliqué sur le ce bouton, une page ouverte dans une nouvelle fenêtre ayant une session, la session sera maintenue jusqu'à ce que l'utilisateur ferme le navigateur. Sur la nouvelle page il y a une navigation à droite qui a des liens différents pour différentes pages. Si j'appelle directement mon sessionkill.aspx il tue la session chaque fois qu'un lien est cliqué sur la fonction de déchargement de la fenêtre.

+0

Je ne sais pas pourquoi cela a un downvote, il est un raisonnable (si débutant) question – annakata

+0

L'OP est membre du site pendant 7 mois ! Et n'a pas encore appris à formater le code, forçant d'autres membres de la communauté responsable à le faire pour lui. Je pense que le downvote était bien mérité. – Cerebrus

+0

Cher Je sais que vraiment mauvais mais j'ai essayé de formater le code ci-dessus, pouvez-vous s'il vous plaît donner quelques conseils pour ce –

Répondre

1

Mozilla ne définit pas la propriété de la window.event mondiale.

Je vous recommande d'utiliser un cadre AJAX, comme JQuery (ou même Microsoft AJAX).

function CloseSession(event) { 
    // use Mozilla event parameter, or window.event if that was not passed  
    event = event || window.event; 
    alert("Inside Close"); 
    if ((event.clientX < 0) || (event.clientY<0)) { 
    alert("Inside Events"); 
    location.href = '/forms/sessionkill.aspx'; 
    }  
} 

Mise à jour: si vous utilisez JQuery:

function CloseSession(e) { 
    alert("Inside Close"); 
    if ((e.pageX < 0) || (e.pageX < 0)) { 
    alert("Inside Events"); 
    location.href = '/forms/sessionkill.aspx'; 
    }  
} 
+0

Cher je peux avoir un code pour cette ajax ou jquery mise en œuvre –

+0

Comment puis-je utiliser cette fonction sur window.onbeforeunload –

+0

L'exemple jquery serait similaire, sauf que l'événement serait passé en paramètre (donc pas besoin pour le contrôle) et event.pageX et event.pageY au lieu de clientX et clientY. Voir: http://docs.jquery.com/Events/jQuery.Event – samjudson

Questions connexes