调用已被调用的本机javascript函数;抹去;通过网页
假设一个网页做到了这一点:调用已被调用的本机javascript函数;抹去;通过网页,javascript,Javascript,假设一个网页做到了这一点: window.alert=console.info 如何通过浏览器控制台恢复原始的alert方法以恢复模式 我尝试访问窗口。prototype但它不存在。我还想知道这样的过程是否普遍存在(例如,如果String.*被网站删除/重新定义,或者网站是否创建了console.log=window.alert)。您可以做的是创建一个iframe将其附加到页面,然后从该iframe复制alert方法 //someone did this window.alert = null;
window.alert=console.info代码>
如何通过浏览器控制台恢复原始的alert
方法以恢复模式
我尝试访问窗口。prototype
但它不存在。我还想知道这样的过程是否普遍存在(例如,如果String.*
被网站删除/重新定义,或者网站是否创建了console.log=window.alert
)。您可以做的是创建一个iframe将其附加到页面,然后从该iframe复制alert方法
//someone did this
window.alert = null;
//you are doing this
var frame = document.createElement('iframe');
document.body.appendChild(frame);
window.alert = frame.contentWindow.alert.bind(window);
document.body.removeChild(frame);
如果你能为你的函数找到一个多边形填充,你可以把它插回去。在您的情况下,我不认为窗口的polyfill.alert
。可能存在重复,因为指向的重复目标只包含过时的答案,我更倾向于将该窗口作为此窗口的副本关闭…是否有一种方法不依赖于iframe
,也不依赖于更改页面内容?您可以创建新窗口并从中复制警报