我有浏览器插件,可以将iframe插入网页。 iframe会尽早插入(使用DOMContentLoaded
),以便iframe的内容将与页面一起呈现。
但在Firefox中并没有发生。即使iframe似乎提前插入,页面/图片/等的内容也会加载到iframe的内容之前。
是否有解决此Firefox行为的方法,以便iframe内容可以提前加载或首先加载?
不确定是否重要但是这两种方法具有相同的结果:
方法1.在DOMContentLoaded
方法2:
nsiWebProgressListener()
onStateChange: function (aBrowser, aWebProgress, aRequest, aStateFlags, aStatus) {
const STATE_START = Components.interfaces.nsIWebProgressListener.STATE_START;
const STATE_STOP = Components.interfaces.nsIWebProgressListener.STATE_STOP;
if (aStateFlags & STATE_STOP) { //document is undefined at STATE_START
try {
//create iframe
} catch (e) {}
}
return true;
},
答案 0 :(得分:0)
听众DOMContentLoaded
的爆发时间晚于人们对FF的思考。通过使用Firefox的onLocationChange
(触发URL更改)并将setTimeout循环设置为50毫秒来解决问题。