84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
劫持了alert
alert
window.alert = 'a'
如何继续在当前页alert呢?(iframe之类的 除外,在当前域下)
iframe
以前有人解答过两种方法——第一种 delete alert就好了。。现在不行了。什么原因啊。。浏览器新特性?第二种 用函数原型但是我给忘了、。。。
delete alert
函数原型
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
我想了一种方法
function fix() { var iframe = document.createElement('iframe') iframe.src = 'about:blank' document.body.appendChild(iframe) window.alert = iframe.contentWindow.alert } window.alert = '' alert() // error fix() alert() // succ
用一个变量保存起来_alert=alert
_alert=alert
alert是window的configurable属性,删除了就是删除了,怎么会自己变成原来的alert函数呢?你说的原型的方式,倒是有一种可能,比如:
window
configurable
function Person(){} Person.prototype.say = function(){console.log('from person')} var p = new Person(); p.say()// from person p.say = function(){console.log('from instance')} p.say()// from instance delete p.say p.say()// from person
我想了一种方法
用一个变量保存起来
_alert=alert
alert
是window
的configurable
属性,删除了就是删除了,怎么会自己变成原来的alert
函数呢?你说的原型的方式,倒是有一种可能,比如: