max10041230 2018-12-07 03:17 采纳率: 100%
浏览 755
已采纳

怎么获取iframe通过http请求的页面中的元素值?

获取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>

一个是本地文件,一个是在服务器上的文件,不放在同一域名下面。

  • 写回答

3条回答 默认 最新

  • 天际的海浪 2018-12-07 08:15
    关注

    如果只是二级域名不同,一级域名相同的跨域可以用html5的"postMessage"方法。比如 a.baidu.com 和 b.baidu.com
    如果一级域名不同的跨域,比如 www.baidu.comwww.google.com 是无法实现 iframe 跨域操作的。只能用服务器代理的ajax方式,实现跨域获取数据

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • EvaLilys 2018-12-07 05:26
    关注

    http://blog.sina.com.cn/s/blog_63940ce201015w0d.html 我觉得这个写的还是很清楚的,你可以看看。另外,ie6会不会版本太低了

    评论
  • 漫步街边 2018-12-07 07:03
    关注

    两种方式:一如果不是动态加载的图片那么可以直接写绝对路径,第二动态路径的话那么在线上的config中加上跨域访问,再去ajax请求就行了图片说明

    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥50 74LS系列 74LS00 74LS04设计一个RS485电路(关键词-差分)
  • ¥30 各位help写一下代码
  • ¥15 在运行SDEdit模型下载不了
  • ¥15 求51控制l298n驱动的小车中超声波避障怎么写
  • ¥15 电脑连上WIFI却用不了
  • ¥30 MATLAB在RLC电路的固有响应和阶跃响应GUI仿真报告
  • ¥15 hyper-v出现的问题
  • ¥15 有能用的可加酬金,求可以批量下载懒人听书的软件,能登录自己帐号的。
  • ¥100 高博一起做RGB-D SLAM(5)VO无法出visualisation问题
  • ¥15 使用matlab进行手眼标定的仿真验证,得到齐次矩阵与opencv相差较大