Bloquer et Activer l'actualisation en Javascript

Résolu
cs_rudddy Messages postés 24 Date d'inscription dimanche 11 janvier 2004 Statut Membre Dernière intervention 11 mars 2007 - 12 mai 2006 à 12:23
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 15 mai 2006 à 15:36
<!-- / icon and title --><!-- message -->

Salut

J'ai le problème suivant :
j'ai dans ma page un javascript qui recharge la page toutes les 30 s

Seulement j'ai aussi un textarea avec un texte dedans que j'ai la possibilité de modifier en cliquant sur un bouton (un formulaire tout bête quoi).
J'aimerai savoir si c'est possible de bloquer la fonction reload quand le focus est sur un champ

merci

12 réponses

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
14 mai 2006 à 14:18
quelques erreurs de syntaxe...

° avec FF regarder la console JavaScript
° avec IE, activer le debogage, et même mieux :
télécharger le debugger, gratis chez microsoft
et quelques explications sur mon site....

<script type="text/javascript">
var qui=false;
function empecherReload()
{
if( !qui )
{
window.location.reload();
}
}
</script>
</head>

<form name="f1">
<textarea id="txt_mission"
onfocus="qui=true;"
onblur="qui=false;"></textarea>
</form>
<script type="text/javascript">
var d=new Date();
window.status=d.getSeconds();
</script>

il vaut mieux(?) ne pas utiliser .activeElement
très pratique, plus simple... mais exclusif IE, je crois.



cordialement Bul.
3
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2006 à 12:27
bonjour,
dans la fonction, ne recharger la page qui si le focus n'est pas dans le textarea.
cordialement Bul.
0
cs_rudddy Messages postés 24 Date d'inscription dimanche 11 janvier 2004 Statut Membre Dernière intervention 11 mars 2007
12 mai 2006 à 12:30
merci beaucoup
juste ca se traduirait comment en code ?? (je suis nase !)
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2006 à 12:37
où qu'elle est la fonction qui recharge ?
le html du textarea ?...
cordialement Bul.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_rudddy Messages postés 24 Date d'inscription dimanche 11 janvier 2004 Statut Membre Dernière intervention 11 mars 2007
12 mai 2006 à 12:39
en fait pour la recharge c'était dans une balise <meta> avec refresh
peut être faudrait-il utiliser document.reload() ?
Mon html est tout bête :

<textarea name="txt_mission" cols="70" rows="10" class="case" id="txt_mission"><? echo "$txt_mission"; ?></textarea>
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2006 à 12:44
>>peut être faudrait-il utiliser document.reload() ?
je le pense... mais parce que je ne sais pas "conditionner une balise".
cordialement Bul.
0
cs_rudddy Messages postés 24 Date d'inscription dimanche 11 janvier 2004 Statut Membre Dernière intervention 11 mars 2007
12 mai 2006 à 12:49
merci comment écrire en javascript
ne recharger la page que si le focus n'est pas sur le textarea ?

if(document.getElementById("txt_mission").focus=false)
document.reload(10);

ca m'a pas l'air top ...
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
12 mai 2006 à 13:07
document.activeElement c'est le dernier objet qui a eu le focus.
hélas, je crains que ce ne soit exclusif IE !

pour les autres navigateurs :
onfocus c'est quand l'objet reçoit le focus,
onblur lorsqu'il le perd.

une variable globale qui bascule de true et false.

puis if ( !variabelglobale ) { recharger la page }

cordialement Bul.
0
cs_rudddy Messages postés 24 Date d'inscription dimanche 11 janvier 2004 Statut Membre Dernière intervention 11 mars 2007
12 mai 2006 à 13:08
merci je vais tester
0
cs_rudddy Messages postés 24 Date d'inscription dimanche 11 janvier 2004 Statut Membre Dernière intervention 11 mars 2007
14 mai 2006 à 12:40
Salut Bultez, j'ai écrit ça mais ca marche pas !


 


script language="javascript">
<!--
function empecherReload(){
actu=true;
if(document.activeElement == f1.txt_mission) {
actu=false
}
if(!actu) { location.reload(10); }


}
-->
</script>
</head>








Je précise que f1 est mon formulaire et txt_mission le id de mon textarea





Merci
0
cs_rudddy Messages postés 24 Date d'inscription dimanche 11 janvier 2004 Statut Membre Dernière intervention 11 mars 2007
14 mai 2006 à 16:52
ca marche nickel

merci bcp
au fait je suppoose que :
<script type="text/javascript">
var d=new Date();
window.status=d.getSeconds();
</script>

était une erreur ?
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
15 mai 2006 à 15:36
ben non,
ça permettait de voir si le reload s'effectauait ou pas.
cordialement Bul.
0
Rejoignez-nous