搞前端的都知道,iframe存在跨域访问的问题。
在不同浏览器中,google浏览器出于安全考虑,对于file协议有安全限制,无法用js访问本地资源。

为了说明不同浏览器间iframe访问的差异,我将举例说明。

huangbaokang.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>iframe交互问题</title>
</head>
<body><script type="text/javascript">function modify(){var iframe_doc = document.getElementById("ifr_id").contentDocument;iframe_doc.getElementById("child_id").innerHTML = "张露露";}</script><button onclick="modify()">改变iframe的值</button><iframe id="ifr_id"src="zhanglulu.html"></iframe>
</body>
</html>

代码比较简单,body里只有一个button按钮和iframe元素,通过点击按钮改变内嵌iframe里面的值。

zhanglulu.html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>内嵌页面</title>
</head>
<body><label id="child_id">黄宝康</label>
</body>
</html>

访问huangbaokang.html在谷歌浏览器中,页面如下:

点击按钮,在谷歌浏览器控制台报了一个错,iframe中的值并没有改成张露露

Uncaught DOMException: Failed to read the ‘contentDocument’ property from ‘HTMLIFrameElement’: Blocked a frame with origin “null” from accessing a cross-origin frame.
at modify (file:///C:/Users/yangfeng/Desktop/huangbaokang.html:10:55)
at HTMLButtonElement.onclick (file:///C:/Users/yangfeng/Desktop/huangbaokang.html:14:30)

同样在360浏览器也报了这个错。

在IE9浏览器中,却可以改变内嵌iframe中的值,而且浏览器控制台中没有报错信息。

推广链接

新款厨房卧室橱柜贴纸,大量有货,支持分销代销,分享此内容到朋友圈,凭截图找卖家免费领取保温杯一个(包邮),活动真实有效,每天只有前60个名额,发货领取奖品请扫码联系店主。

iframe交互问题,浏览器存在差异相关推荐

  1. js php 正则差别,JavaScript正则表达式的浏览器的差异

    JavaScript中的正则表达式在不同的浏览器中得到的结果可能会有差异,下面把正则表达式在五大主流浏览器(IE.Firefox.Chrome.Safari.Opera,以当前版本为准)之间的差异整理 ...

  2. WebView使用以及JS交互以及浏览器编写与高德导航

    WebView使用以及JS交互以及浏览器编写与高德导航 WebView使用以及JS交互以及浏览器编写 高德导航(步行,骑行,驾车,货车) WebView使用以及JS交互以及浏览器编写 浏览器编写 &l ...

  3. JS全屏代码,解决PDF.js在iframe中部分浏览器全屏功能错误

    JS全屏代码,解决PDF.js在iframe中部分浏览器全屏功能错误 PDF.js在iframe模式在火狐浏览器中按钮被屏蔽 经分析,viewer.js 发现了判断逻辑 debug发现 第二个判断后为 ...

  4. Javascript iframe交互并兼容各种浏览器的解决方案

    在Web前端开发中,我们经常会用到iframe这个控件. 但是这个控在内.外交互时,往往各个浏览器所用的关键字不同,很是麻烦,为了能够得到子iframe中的window对象,各家浏览器有着各家的指定, ...

  5. 谷歌浏览器iframe兼容问题_Javascript iframe交互并兼容各种浏览器的解决方法

    在Web前端开发中,我们经常会用到iframe这个控件. 但是这个控在内.外交互时,往往各个浏览器所用的关键字不同,很是麻烦,为了能够得到子iframe中的window对象,各家浏览器有着各家的指定, ...

  6. 鼠标事件在浏览器的差异

    刚刚看了一篇关于鼠标事件的文章,整理下用法.... 鼠标事件是web开发最常用的一类事件,由于各种原因,不同开发商或者不同版本的浏览器之间对于鼠标事件的实现也有所不同. mouseover 和mous ...

  7. CSS中的未定义行为,浏览器的差异(一)

    今天看了张鑫旭大佬的新书的有感吧,记录一下. Web标准未对一些场景做出明确规范,所以各大浏览器厂家只能根据自己的理解和喜好去实现,表现差异不是浏览器的bug,用计算机领域的术语描述为"未定 ...

  8. 【转】不同内核浏览器的差异以及浏览器渲染简介

    一.简单介绍一下什么是浏览器内核. 浏览器最重要或者说核心的部分是"Rendering Engine",可大概译为"解释引擎",不过我们一般习惯将之称为&quo ...

  9. 腾讯linux内核面试,【腾讯谷歌Linux面试题】面试问题:浏览器内核差异… - 看准网...

    浏览器内核的差异 2017年04月19日 23:47:28 阅读数:185 浏览器内核: 浏览器最重要最核心的部分是"render engine",即解释引擎,专门负责对html, ...

最新文章

  1. pix4d计算机配置速度,ContextCapture、Pix4D电脑需求配置
  2. 4.Maven概念模型,maven的生命周期,Maven坐标,依赖管理(依赖范围,依赖声明),仓库管理,私服概念
  3. android java 面试题,Android java 高级面试题库
  4. Linux服务器 | 事件处理模式:Reactor模式、Proactor模式
  5. java替换带特殊字符的字符串6_Java字符串替换特殊字符(保加利亚语,波兰语,德语)...
  6. Python_爬虫_urllib解析库
  7. Rust: Rust Language Cheat Sheet,强烈推荐!
  8. node服务端生成七牛token
  9. ROS机器人021-机器人命令行发送cmd_vel话题及/cmd_vel geometry_msgs/Twist示例
  10. Visio(一) Visio 键盘的上下左右快捷键 没办法移动图标了:取消掉Scroll lock指示灯即可。
  11. 计算机课拔线头检讨书,实验室检讨书.doc
  12. Go之Go语言是什么?Go有什么特点?Go语言的应用前景如何?
  13. oppoR11S安装应用一直失败
  14. 在bpfTrace中使用USDT
  15. STM32CubeMX | STM32基于HAL实现USB模拟U盘
  16. 系统环境变量Path 被删除了 Win10的环境变量 PATH 列表显示:
  17. Azkaban---基础
  18. python毕业设计作品基于django框架 校园二手书籍交易系统毕设成品(2)网站功能
  19. 基于小程序的微信学习平台设计与实现+源码
  20. markdown基础语法的使用

热门文章

  1. 专访|LinkedIn资深数据科学家黄申:人工智能不会一夜之间改变人们的生活
  2. 流利说反编译抓包笔记
  3. 【调剂】华北理工大学2022年硕士研究生生源调剂信息公告
  4. 双曲抛物面z=xy俗称马鞍面-高数学习笔记(1)
  5. 封装格式分析-MP4
  6. 2021最新优化算法——食肉植物算法(CPA)
  7. spi推5050 2811/2812 灯珠
  8. 【Java基础16】不可变集合、Stream流和异常
  9. Nudge 助推 下载 及 感想
  10. 无法配置在此计算机的硬件上运行6,“Windows安装程序无法将Windows配置未在此计算机的硬件上运行”解决方案 | 秋收稻田...