J'ai plusieurs petites pages contextuelles conçues pour se fermer automatiquement lorsqu'elles perdent leur focus, c'est-à-dire que l'utilisateur clique sur le document parent.L'événement Onblur se déclenche par erreur dans IE lorsque des parties d'un document contextuel sont cliquées
Malheureusement, dans IE8, le flou se produit également lorsque l'utilisateur commence à remplir un formulaire de saisie dans la page contextuelle. En effet cliquant partout à l'intérieur du formulaire provoque cela, ou même lorsque l'utilisateur clique accidentellement sur du texte. Il semble que ces éléments ne font pas partie du document contextuel. Comment puis-je les faire ainsi?
Voici mon code de flou (dans un script .js) que j'utilise sur plusieurs fenêtres pop-up:
var fClose=0
onload=function() {
fClose=0
setTimeout("doClose()",111);
document.onblur=Blur_Me;
document.onfocusout = Blur_Me;
}
function Blur_Me(){
fClose=1;
setTimeout("doClose()",111);
}
function doClose(){
if(fClose)close();
}
Y a-t-il une raison pour laquelle vous utilisez les événements de document '.onblur' et' .confocusout'? Avez-vous essayé d'utiliser seulement l'un ou l'autre? –
Oui, j'ai lu quelque part que IE "préféré" onfocusout. Un MS "standard" à l'origine il était juste onblur Mais je vais essayer à nouveau sans le onfocusout ... – aqk
Je l'ai essayé sans le onfocusout et maintenant il ne se ferme pas du tout dans IE.Mais ça fonctionne bien en FF (Vous n'avez pas encore essayé Chrome ou Safari) – aqk