我通过功能更改了HTML5 iframe代码的内容, 然而;该功能会重新加载整个页面,这是一个问题,因为我不打算这样做。在iframe标记中重新加载页面就是复制内容。这是由于我在iframe广告代码中使用了onload事件触发器。是否可以通过doc.write => document阻止函数中的重新加载?
非常感谢
iframe.onload = function() {
function_insert_txt_iframe ...
}
window.addEventListener("DOMContentLoaded", function(event) {
function_insert_txt_window ...
}
答案 0 :(得分:1)
您可以使用名为isLoaded
的变量并将其实例化为false。如果该值为true,则无需重新加载页面:
var isLoaded = true;
iframe.onload = function() {
if(!isLoaded) function_insert_txt_iframe ...
}
window.addEventListener("DOMContentLoaded", function(event) {
if(!isLoaded) function_insert_txt_window ...
}
答案 1 :(得分:0)
Document.readyState
似乎可以满足您的要求:
document.addEventListener('readystatechange', event => {
if (event.target.readyState === 'interactive') {
function_insert_txt_iframe();
}
else if (event.target.readyState === 'complete') {
function_insert_txt_window();
}
});
查看此处:https://developer.mozilla.org/en-US/docs/Web/API/Document/readyState