当前位置:  开发笔记 > 编程语言 > 正文

覆盖iframe的document.write

如何解决《覆盖iframe的document.write》经验,为你挑选了1个好方法。

为了我自己的目的(咳嗽懒惰加载广告脚本),我覆盖了document.write函数,以缓冲脚本的输出,将其写入div,并在完成后恢复本机document.write.

伪代码看起来像这样:

保存本机代码document.write

重新定义document.write

脚本的eval和缓冲输出

脚本完成后,将缓冲区写入

恢复本机document.write

问题出现在粗体步骤中 - 广告脚本中的一行创建了iframe,然后调用

frame.document.write

单步执行Firebug,我已经验证了这个document.write是本机JS代码而不是我的覆盖版本.

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



1> Pointy..:

每一扇窗户都是独特而珍贵的雪花,因此带着造物主的某些礼物进入这个世界.这些礼物中有自己的"窗口"和"文件"物品,像黎明时代的水晶般清澈的原始海洋一样清新纯净.

同样,所有基本的Javascript"类"(Function,Array,RegExp等)都是"干净的".这就是为什么当你将一个页面加载到iframe时,如果该页面有自己的依赖于(例如)jQuery的本地脚本,它必须导入它自己的库副本.

推荐阅读
mobiledu2402851173
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有