编程语言
首页 > 编程语言> > javascript-覆盖iframe的document.write

javascript-覆盖iframe的document.write

作者:互联网

出于我自己的目的(咳嗽延迟加载广告脚本),我将覆盖document.write函数,以便缓冲脚本的输出,将其写入div并在完成后还原本机document.write.

伪代码如下所示:

>保存本机代码document.write
>重新定义document.write
>脚本的评估和缓冲输出
>脚本完成后,将缓冲区写入
>恢复本机document.write

该问题发生在粗体步骤中-广告脚本中的其中一行创建了一个iframe,然后调用

frame.document.write

逐步检查Firebug,我已验证此document.write是本机JS代码,而不是我的覆盖版本.

有没有一种方法可以覆盖所有窗口和框架的document.write?这是一个范围问题,但是我不确定如何强制我的document.write占上风.

解决方法:

每扇窗户都是独特而珍贵的雪花,因此,造物主的某些礼物将它们带入了这个世界.在这些礼物中,有自己的“窗口”和“文件”物品,就像时间的黎明般清澈透明的原始海洋一样清新而纯净.

同样,所有基本Javascript“类”(函数,数组,RegExp等)都“干净”.这就是为什么当您将页面加载到iframe中时,如果该页面具有依赖于(例如)jQuery的本地脚本,则必须导入自己的库副本.

标签:document-write,scope,iframe,javascript
来源: https://codeday.me/bug/20191024/1918893.html