Search code examples
javascriptjquerydesign-patternsproxy-pattern

JS Proxy Pattern


I use this code to override the window.alert function. The function replaces breaks by \r\n. It works fine in Firefox, but ofcourse not in IE. Im getting the error: Property or method not supported.

(function() {
  var proxied = window.alert;
  window.alert = function(txt) {
    txt = txt.replace(/<br>/g, "\r\n");
    return proxied.apply(this, arguments);
  };
})();

Please help me find the solution! Thank you


Solution

  • I would do this, in case window.alert is not a "real" function in IE:

    (function() {
      var proxied = window.alert;
      window.alert = function(txt) {
        txt = txt.replace(/<br>/g, "\r\n");
        return proxied(txt);
     };
    })();
    

    Sorry, untested, Does it work?