跨域修改iframe中的内容

2014-05-20 17:49:48

有时候会需在自己的网站上显示其他网站的部分内容,虽说php+js可以抓到,但最简洁的方法便是iframe引用了。不过现在的站长学聪明了,大多用js检测是否有人引用自己的页面,一旦检测到立马直接跳转到自己的网站去,这样一来,不仅抓取不成,反而跳到他的网站。。。不过搞代码的,不都是见招拆招吗,你禁止我引用,我就另出奇招。Google上借用了下国外朋友的妙招,成功破解防iframe引用, ;-)。

现在来说说成功引用后的事,引用是成功了,可是有点东西看着碍眼,可是这是别人的页面,想改也改不得啊~这时候就想到了用JS搞定它,跨域替换iframe中的内容,当然也用到了些php,废话不多说,直接贴代码:

先是加载iframe了:

[php]

[/php]

然后是JS:

[code lang=”js”]

[/code]

再上php,replace.php:

[php]

[/php]

【注】:str_replace也可以批量替换内容:

[php]

$replacements = array(
"原词1" => "替换词1",
‘原词2’ => ‘替换词2’,
‘原词3’ => ‘替换词3’
);
$content=strreplace(arraykeys($replacements), $replacements, $content);

[/php]

How to prevent IFRAME from redirecting top-level window

I use sandbox=”…” allow-forms allows form submission allow-popups allows popups allow-pointer-lock allows pointer lock allow-same-origin allows the document to maintain its origin allow-scripts allows JavaScript execution, and also allows features to trigger automatically allow-top-navigation allows the document to break out of the frame by navigating the top-level window Top navigation

浅析JS和PHP中等于(==)和恒等(===)的区别

首先,先做个简单的介绍,让先有个直观的认识 equality 等同     = identity 恒等  两边值类型不同的时候,要先进行类型转换,再比较。 = 不做类型转换,类型不同的一定不等。 举例说明: “1”    true 类型不同,””将先做类型转换,把true转换为1,即为 “1”    1; 此时,类型仍不同,继续进行类型转换,把”1″转换为1,即为 1 1; 此时,”” 左右两边的类型都为数值型,比较成功! 如果比较:”1″  =  true 左侧为字符型,右侧为bool布尔型,左右两侧类型不同,结果为false; 如果比较:”1″  =  1      左侧为字符型,右侧为int数值型,左右两侧类型不同,结果为false; 如果比较: 1   =  1