已经拿到了iframe中的body,该怎么样继续往下拿到里面的图片呢?
const iframeHtml = document.getElementById('iframe').contentWindow;
const iframeBody = iframeHtml.document.getElementsByTagName('body')[0];
接着无论怎么获得都报错。。。
如果换成html2canvas能获取到iframe中的内容并转成图片吗
这就是所谓的安全(之一)。你能iframe已经不错了,一些网站根本不允许iframe。
这些是通用浏览器“安全定义”,自己实现的浏览器除外,比如cookie httponly,难道客户端能不知道吗,不是,只是浏览器不让你js干。
我也知道安全问题不允许访问第三方的iframe内容,所有打算换成html2canvas插件看能不能获取里面的图片,但好像其原理也是读取节点内容,搞了好久html2canvas获取的图片都是空白。
@纯海之蓝: 服务器解析。
当然如果 你客户端 不是通用浏览器,那n多办法可以解决。
跨域无法获取
域名不同的情况下,会存在跨域,需要在嵌套的网站页面中设置允许访问的域名