2009-10-13 10 views
0

Lorsque je fais la mise au point de l'iframe et que j'essaie d'appuyer sur la touche Échap pour fermer la fenêtre, rien ne se passe. Je suppose que c'est parce que l'iframe focalisé n'est pas abonné à cet événement. Est-ce que quelqu'un a des idées sur comment je pourrais attacher cet événement à l'iframe sans avoir à modifier manuellement chacune des pages qui sont contenues dans un thickbox?Thickbox ne se ferme pas lorsque la touche Échap est enfoncée lorsque l'iframe est mis au point

Répondre

1

Cette solution fonctionne dans Internet Explorer, qui se trouve être le seul navigateur utilisé par ma base de clients, mais je préférerais une solution qui fonctionne au moins dans firefox. Je l'ajoute à la ligne 245 dans la source thickbox d'origine.

0

Exécutez-vous Flash dans l'iframe? Il pourrait voler votre focus du clavier.

+0

Nope, et je peux recréer le problème dans firefox, chrome, par exemple. – Dave

+0

Existe-t-il un moyen de fermer l'iframe même lorsqu'il fonctionne par exemple en vidéo? –

0

Cela ne fonctionne pas pour des raisons de sécurité. Aucun des événements qui se produisent à l'intérieur de l'iframe n'est autorisé à filtrer vers le document conteneur.

0

Je pourrais résoudre ce problème en remplaçant la ligne 245 du fichier thickbox.js.

Juste remplacé:

if(!params['modal']){ 

avec

if(params['modal'] != "true"){ 
0

ajouter ceci dans votre code

$('#TB_iframeContent').ready(function(){ 

    setTimeout(function(){ 
     $(window).keyup(function(e){ 
        if(e.keyCode == 27){ 
        $('#TB_closeWindowButton').click(); 
      } 
      }); 
     }, 50); 

}); 
Questions connexes