javascriptテーマは、どうやってalertを書き直したら正常にalertをポップアップできますか?
1598 ワード
今日は群の中で面白い問題に出会いました.皆さんは能力を発揮して、いろいろな答えを出しました.わざわざブログにまとめて発表します.
// :
window.alert = function(){};______;alert(1); , alert(1) , 。
新しい実行環境を作成し、iframeサンドボックスを使用します.
window.alert = function(){};
window.alert=function(obj){
var iframe=document.createElement("iframe");
iframe.src="javascript:void(0);"
document.body.appendChild(iframe)
iframe.contentWindow.alert(obj);
}
alert(1)
新しい実行環境を作成し、新しいウィンドウを開きます.
window.alert = function(){};
window.alert = function(a){
window.open('','').alert(a)
//window.createPopup().document.parentWindow.alert(a) //IE only
}
alert(1);
解法三、元のalertを取り戻す(IEで失敗)
window.alert = function(){};
window.alert = function(a){
delete window.alert;
window.alert(a);
}
alert(1);
解法四、考え方は同じです.(IEの下で失敗しました.)
window.alert = function(){};
window.alert = function(a){
window.__proto__.alert.call(window,a);
//window.constructor.prototype.alert.call(window,a);
}
alert(1);
解法5(IE only)
window.alert = function(){};
execScript('sub alert(msg):msgbox msg:end sub', 'vbscript');
alert(1);
解法六とは、ちょっとした気絶のことです.
window.alert = function(){};
window.alert = function(a){
window.confirm(a)
}
alert(1);