”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 如何用Javascript实现IFRAME加载完成时的回调?

如何用Javascript实现IFRAME加载完成时的回调?

发布于2024-11-07
浏览:579

How to Implement a Callback When an IFRAME Finishes Loading with Javascript?

使用 Javascript 回调加载 Iframe

要在 IFRAME 完成加载时执行回调,请按照以下步骤操作:

创建 IFRAME 和加载处理程序

创建 IFRAME以编程方式:

var iFrameObj = document.createElement('IFRAME');
iFrameObj.src = url;

向 IFRAME 添加加载处理程序:

$(iFrameObj).load(function() {
  // handle iframe load
});

访问 IFRAME 内容并销毁它

在加载处理程序中,访问 IFRAME 内容并销毁它:

function callback(iFrameObj) {
  // obtain iframe data
  var iframeData = $('body', iFrameObj.contentWindow.document).html();
  // destroy the iframe
  document.body.removeChild(iFrameObj);
}

其他注意事项

  • 如果使用超时进行删除,请确保设置适当的延迟以允许 IFRAME 加载。
  • 避免跨站点请求,因为其内容无法访问。
  • 使用 jQuery 实现跨浏览器兼容性和显式加载events.

示例

$('#myUniqueID').load(function() {
  if (typeof callback == 'function') {
    callback($('body', this.contentWindow.document).html());
  }
  setTimeout(function () {$('#frameId').remove();}, 50);
});
版本声明 本文转载于:1729302797如有侵犯,请联系[email protected]删除
最新教程 更多>

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3