获取iframe加载的页面是报了拒绝访问,知道是跨域问题,求教高手怎么解决,
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Test ContentWindow</title>
<script type="text/javascript">
function getImageData() {
var test = document.getElementById('LayerDMPhotoIframe').contentWindow.document.getElementById('showResults');
var data = test.innerHTML;
}
</script>
</head>
<body>
<iframe src="http://ccssc.jh/index.html" id="LayerDMPhotoIframe" width="1000px" height="800px" scrolling="no" frameborder="0" style="zoom:80%;"></iframe>
<button onclick="getImageData()">获取图片数据</button>
</body>
</html>
一个是本地文件,一个是在服务器上的文件,不放在同一域名下面。
如果只是二级域名不同,一级域名相同的跨域可以用html5的"postMessage"方法。比如 a.baidu.com 和 b.baidu.com
如果一级域名不同的跨域,比如 www.baidu.com 和 www.google.com 是无法实现 iframe 跨域操作的。只能用服务器代理的ajax方式,实现跨域获取数据
http://blog.sina.com.cn/s/blog_63940ce201015w0d.html 我觉得这个写的还是很清楚的,你可以看看。另外,ie6会不会版本太低了
两种方式:一如果不是动态加载的图片那么可以直接写绝对路径,第二动态路径的话那么在线上的config中加上跨域访问,再去ajax请求就行了