2010-06-25 4 views
0

Ceci est la fonction de déconnexion de mes chats. Cela fonctionne parfaitement lorsque j'ouvre le chat sur une seule page. www.example.com/chatbox/index.htm Mais quand son avec d'autres éléments dans la même page en utilisant iFrame il ne work.egwww.example.com/chat & paintIframe.htmLa fonction javascript ne fonctionne pas

C'est mon code

<script type="text/javascript"> 
function singout(){ 

data="user=" + "" +"&oper=signout" 
Ajax_Send("POST","chatbox/users.php",data,checkSignOut); 
alert("Singout"); 
return false;  
} 
</script> 

et ici je l'appelle

<iframe height="300" width="600" frameborder="0" src="chatbox/index.htm"  onbeforeunload="singout()"></iframe> 
+3

Note de côté: si ** gn ** out et si ** ng ** out sont deux choses différentes :) Mais si c'est votre code littéral, au moins vous êtes cohérent. – Thomas

+2

Que voulez-vous dire par "ne fonctionne pas"? S'il vous plaît soyez plus précis. – Thomas

+0

De quels autres éléments parlez-vous? Qu'est-ce que vous ajoutez qui le fait ne plus fonctionner? – pkaeding

Répondre

0

Je vais sortir sur un membre ici et dire qu'il n'y a pas un problème avec la fonction, mais avec ce que vous attendez onbeforeunload à faire . Je crois que vous vous attendez à ce que si le navigateur est fermé, ou que l'utilisateur navigue loin de la page, il exécutera l'événement onbeforeunload, ce qui n'est malheureusement pas le cas, ou du moins il ne sera pas cohérent. La meilleure méthode pour s'assurer que l'utilisateur est déconnecté lorsqu'il n'a plus le navigateur ouvert consiste à utiliser ajax pour effectuer un appel au serveur toutes les quelques secondes. Si l'appel est fait, actualisez la session avec succès, si elle ne réussit pas, vous n'avez rien à craindre car la session expirera automatiquement après un certain temps.

+0

pouvez-vous me dire comment appeler sever? désolé, je suis nouveau à l'apprentissage ajax. – Nina

Questions connexes