我想在外部网站上搜索<div class="sender" style="display: block;">
中的iframe
这样的简单字符串。
代码不起作用
var target = '<div class="sender" style="display: block;">'
console.log( $( "iframe" ).contents().find('body').html().search( target ) != -1 )
因为我有错误
Uncaught SecurityError: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "http://website1.com" from accessing a frame with origin "http://website2.com". Protocols, domains, and ports must match.
我该怎么办?
答案 0 :(得分:1)
看,它说Failed to read the 'contentDocument'
。
由于安全规则,您无法获取(读取)具有不同域名的外部网站的任何内容,您也无法对其进行编辑。
它说Protocols, domains, and ports must match.
。
答案 1 :(得分:1)
我建议使用<object></object>
或<embed></embed>
或更好的解决方法是,如果您有权访问您正在访问的服务器页面,则在将其发送到客户端时,可以在标头中启用跨站点脚本。
问题是协议,域和端口必须匹配,并且加载此html的唯一方法是让服务器发送相应的标头,同时查看此how to block website from loading in iframe? < / p>