Advertisement
Guest User

ak732

a guest
Aug 20th, 2009
398
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. (function($) {
  2.    $.handleErrors = function(handler, options) {
  3.       var opts, jbind;
  4.       options = options || ($.isFunction(handler) ? undefined : handler);
  5.       handler = $.isFunction(handler) ? handler : undefined;
  6.       opts = $.extend({}, $.handleErrors.defaults, {handler:handler}, options);
  7.       if (opts.handler) {
  8.          jbind = $.fn.bind;
  9.          $.fn.bind = function(type, data, fn) {
  10.             var ofn, wfn;
  11.             if (!fn && data && $.isFunction(data)) {
  12.                fn = data;
  13.                data = undefined;
  14.             }
  15.             if (fn && type.indexOf("error") === -1) {
  16.                ofn = fn;
  17.                wfn = function() {
  18.                   try {
  19.                      ofn.apply(this, arguments);
  20.                   } catch(e) {
  21.                      handler(e);
  22.                      return false;
  23.                   }
  24.                };
  25.                fn = wfn;
  26.             }
  27.             return jbind.call(this, type, data, fn);
  28.          };
  29.       }
  30.    };
  31.    $.handleErrors.defaults = {};
  32. })(jQuery);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement