Introduction au problème de l'échec du flou après la modification de l'attribut src de l'iframe dans le navigateur Firefox
<span style="font-family:Microsoft YaHei;font-size:18px;"> <span style="background-color: rgb(255, 255, 255);">昨天写了一下 </span> <a target=_blank href="http://blog.csdn.net/u012175246/article/details/44104783" target="_blank" style="background-color: rgb(255, 255, 255);">笔记</a> <span style="background-color: rgb(255, 255, 255);">,提到了火狐iframe的onblur事件失效的问题。(这是火狐固有的问题,见 </span> <a target=_blank href="qq://txfile/#" style="background-color: rgb(255, 237, 196);"> <span style="background-color: rgb(255, 255, 255);"> 。)虽然笔记里的方法解决了失效的问题,但当我改变iframe的src属性值之后,onblur事件再次失效。</span> </span>
J'ai posé une question sur Baozhan, et après que les experts y aient répondu, j'ai finalement résolu ce problème.
La raison est qu'après avoir modifié la valeur de l'attribut src de l'iframe, le navigateur actualisera le contenu de l'iframe et l'événement onblur échouera à ce moment-là. La solution consiste à relier l'événement à chaque fois que l'iframe est chargé. Autrement dit, ajoutez l'attribut onload dans l'iframe. Cette valeur d'attribut correspond à la fonction liée à l'événement.
<span style="font-size:14px;"> <iframe id="iframe" src="" scrolling="yes" style="display: none;width:500px;height:500px" src="" onblur="hide()" onload="seint()"> </iframe> </span>
<span style="font-size:14px;"><script> function seint(){ if(isFirefox=navigator.userAgent.indexOf("Firefox")>0){ document.getElementById("iframe").contentWindow.addEventListener("blur",hide,false); } } </script></span>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!