0

我想为 window.confirm 实现一个自定义函数,这样我就不必重写大量遗留代码,但如果出现问题,或者取决于一些任意逻辑,我能够回退到原始函数。

一个快速的存根代码,例如(可能不会这样做,但只是为了一个想法):

window.confirm = function(message, successCallback){
  var ok = site.UI.confirmDialog(message);
  if (ok && typeof(successCallback) == 'function'){
      successCallback();
  } else {
     // maybe call original browser confirm?
     // window.confirmOriginal...?
  }
}

这里的问题是,如果我要覆盖原始函数,如何获得它?它是否存在于原型的某个地方,还是我看错了?

谢谢。

4

1 回答 1

5

这是一个演示

var origConfirm = window.confirm; //store for future use

​window.confirm = function(msg){   //override
     alert(msg);   
}

window.confirm('override!');      //should now be an alert
origConfirm('old confirm');       //the old confirm
于 2012-05-11T14:56:18.310 回答