2010-12-12 3 views

Répondre

1

Observez l'événement de chargement de l'iframe et une fois qu'il a été déclenché, vous pouvez assigner le ondblclick au document à l'intérieur de l'iframe.

<iframe src="some.htm" 
     onload="this.contentWindow.document.ondblclick=function(){alert('it work\'s');}"> 
</iframe> 

Note: ce sera limité par même origine-politique, si le document est à l'intérieur du iframe sur un autre (sous) domaine que la fenêtre parent.

0

Ceci est possible en utilisant astuce CSS: mettre div vide au-dessus de l'iframe et attraper l'événement double clic de cet élément div. Voici le code requis:

<div style="position: relative;"> 
    <div style="position: absolute; left: 0px; top: 0px; width: 500px; height: 300px; z-index: 100;"> 
     <iframe src="myotherpage.html" width="500" height="300"></iframe> 
    </div> 
    <div style="position: absolute; left: 0px; top: 0px; width: 500px; height: 300px; z-index: 999;" ondblclick="alert('frame double clicked');"></div> 
</div> 

Le « cœur » de ce réglage est-il le z-index des deux, avec la DIV ayant une valeur plus grande et bien sûr les avoir à la fois la même taille. En utilisant jQuery, il devrait être assez simple (mais pas trivial) de le rendre "générique" en ajoutant le div supplémentaire au chargement de la page et en appliquant le CSS requis à la volée.

Questions connexes