js原生方法被覆盖,从新赋值原生的方法


Posted in Javascript onJanuary 02, 2018

实现原理

js的原生方法被覆盖掉以后,如果你还没让原生方法又从新指向一个新的变量名,那就gg了。所以,关键就是怎么再获取到原生的方法。实现的原理呢就是创建一个新的window对象,然后从新的window对象里面获取原生的方法,来重新赋值。

使用iframe实现

首先创建一个iframe对象,使用document.createElement方法创建

var iframe = document.createElement("iframe");
document.body.appendChild(iframe)

然后,获取到iframe里面的window对象

var iframeWin = iframe.contentWindow;

最后赋值一下,即可

window.console = iframeWin.console;

使用window.open方法实现

window.open方法调用会打开一个新的窗口,返回一个新的window对象,所以我们获取window对象可以这样获取

var win = window.open(); //获取对象
win.close(); //将打开的窗口关闭
window.console = win.console;

以上这篇js原生方法被覆盖,从新赋值原生的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中几个重要的属性(this、constructor、prototype)介绍
May 19 Javascript
javascript history对象(历史记录)使用方法(实现浏览器前进后退)
Jan 07 Javascript
JavaScript中伪协议 javascript:使用探讨
Jul 18 Javascript
jQuery插件expander实现图片翻转特效
May 21 Javascript
javascript禁止访客复制网页内容的实现代码
Aug 05 Javascript
JavaScript实战之菜单特效
Aug 16 Javascript
详解AngularJs中$sce与$sceDelegate上下文转义服务
Sep 21 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
Apr 11 Javascript
实现Vue的markdown文档可以在线运行的方法示例
Dec 11 Javascript
在vue项目中使用sass语法问题
Jul 18 Javascript
vue动态设置页面title的方法实例
Aug 23 Javascript
微信小程序实现打卡签到页面
Sep 21 Javascript
JS实现验证码倒计时的注册页面
Jan 02 #Javascript
使用socket.io实现简单聊天室案例
Jan 02 #Javascript
使用socket.io制做简易WEB聊天室
Jan 02 #Javascript
AngularJS实现的简单拖拽功能示例
Jan 02 #Javascript
AngularJS实现的锚点楼层跳转功能示例
Jan 02 #Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
Jan 02 #jQuery
Node实战之不同环境下配置文件使用教程
Jan 02 #Javascript
You might like
根德YB400的电路分析
2021/03/02 无线电
php获取某个目录大小的代码
2008/09/10 PHP
解析ajax事件的调用顺序
2013/06/17 PHP
WordPress中使主题支持小工具以及添加插件启用函数
2015/12/22 PHP
php array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
详解Yii2 rules 的验证规则
2016/12/02 PHP
利用PHP抓取百度阅读的方法示例
2016/12/18 PHP
document.compatMode介绍
2009/05/21 Javascript
Javascript中 关于prototype属性实现继承的原理图
2013/04/16 Javascript
JS教程:window.location使用方法的区别介绍
2013/10/04 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
原生js实现类似弹窗抖动效果
2015/04/02 Javascript
jQuery添加和删除输入文本框标签代码
2016/05/20 Javascript
node实现定时发送邮件的示例代码
2017/08/26 Javascript
vue组件父子间通信之综合练习(聊天室)
2017/11/07 Javascript
Nodejs异步回调之异常处理实例分析
2018/06/22 NodeJs
JavaScript去掉数组重复项的方法分析【测试可用】
2018/07/19 Javascript
layui动态渲染生成select的option值方法
2019/09/23 Javascript
解决VUE mounted 钩子函数执行时 img 未加载导致页面布局的问题
2020/07/27 Javascript
js实现微信聊天效果
2020/08/09 Javascript
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
对python Tkinter Text的用法详解
2018/10/11 Python
Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释
2020/01/25 Python
mui几种页面跳转方式对比总结概括
2017/08/18 HTML / CSS
html5通过postMessage进行跨域通信的方法
2017/12/04 HTML / CSS
宝宝周岁宴答谢词
2014/01/26 职场文书
优秀中学生事迹材料
2014/01/31 职场文书
化妆品活动策划方案
2014/05/23 职场文书
消防宣传口号
2014/06/16 职场文书
个人对照检查材料思想汇报(四风问题)
2014/09/25 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
现实表现材料范文
2014/12/23 职场文书
出国留学导师推荐信
2015/03/26 职场文书
故意伤害罪辩护词
2015/05/21 职场文书
话题作文之关于呼唤
2019/11/29 职场文书
Go遍历struct,map,slice的实现
2021/06/13 Golang