Einführung in das Problem des Onblur-Fehlers, nachdem das src-Attribut von iframe im Firefox-Browser geändert wurde
<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>
Ich habe eine Frage zu Baozhan gestellt und nachdem die Experten sie beantwortet hatten, konnte ich sie endlich lösen dieses Problem.
Der Grund dafür ist, dass der Browser nach dem Ändern des src-Attributwerts des Iframes den Inhalt des Iframes aktualisiert und das Onblur-Ereignis zu diesem Zeitpunkt fehlschlägt. Die Lösung besteht darin, das Ereignis jedes Mal neu zu binden, wenn der Iframe geladen wird. Das heißt, fügen Sie das Onload-Attribut im Iframe hinzu. Dieser Attributwert entspricht der an das Ereignis gebundenen Funktion.
<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>
Das obige ist der detaillierte Inhalt vonEinführung in das Problem des Onblur-Fehlers, nachdem das src-Attribut von iframe im Firefox-Browser geändert wurde. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!