一道js代码填空题的解 window.alert = function(){};____;alert(1);
来源:互联网 发布:帝国cms用什么语言写的 编辑:程序博客网 时间:2024/06/04 18:38
window.alert = function(){}; //覆盖了alert方法//这里写些代码将alert还原alert(1); //这里要求还能弹出alert对话框
记录这个话题是因为微博上有人讨论到了,我直接写答案了。
方法1,直接删除 alert。
window.alert = function(){};delete alert;alert(1);这个代码是最简单、效果最好的,推荐。
方法2,从原型链上找回原本的alert方法。
alert是window的方法,因此找到window.constructor.prototype.alert,再调用call或者apply即可。
window.alert = function(){};window.alert = function(s){window.constructor.prototype.alert.call(window,s);};alert(1);重新定义了一个函数再去覆盖,后面的alert是这个函数而不是真正原本的alert.
window.constructor是兼容性比较好的,如果使用Window对象则IE不支持。
方法3,iframe法。
新建一个空白iframe,这个iframe里的DOM就是干净的了,将这个iframe里的alert引用出来,也能让警告对话框弹出。
我只能说,想出这个方法的人真是不懂JS。
代码写的多写的复杂,并不代表水平高。
真正的代码高手,总是把代码写的更少、更简单。
- 一道js代码填空题的解 window.alert = function(){};____;alert(1);
- js重写window.alert
- 重写window的alert
- alert效果类似的js代码
- 网站开发进阶(二十)JS中window.alert()与alert()的区别
- JS实现自定义alert,自定义window.open
- js代码中不加alert后边的代码不执行
- js alert
- 关于在cs文件中输出js的alert代码
- js 的 alert函数问题
- js中的alert的总结
- js的alert()使用注意
- JS中弹出窗口的命令总结window.open window.alert .....
- 重写js 的alert,自定义alert的样式,定时关闭
- return alert from function
- Alert
- Alert
- alert
- html学习笔记
- 算法导论:关于时间复杂T(n)的表达式处理
- oracle 查询所有表 表所有字段
- [面试]“最后一问”如何回答
- 标志寄存器的详细解释
- 一道js代码填空题的解 window.alert = function(){};____;alert(1);
- UILabel文本太长,需要滑动效果
- 用MFC的Edit控件显示日志
- Command of SVN for linux
- Spring3 配置datasource 的方法
- 在xml布局文件中,我们既可以设置px,也可以设置dp(或者dip)。一般情况下,我们都会选择使用dp,这样可以保证不同屏幕分辨率的机器上布局一致。但是在代码中,如何处理呢?很多控件的方法中都只提供了
- 取消还未执行的定时器响应函数
- mt.exe : general error c101008a: Failed to save the updated manifest to the file
- static和volatile的含义