Guest User

Untitled

a guest
Apr 26th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.32 KB | None | 0 0
  1. (function($) {
  2. $.runtimeErrorLog = [];
  3. var logError = function(errorMessage, fileName, lineNumber) {
  4. $.runtimeErrorLog.push(errorMessage + ", in " + fileName + "(line " + lineNumber + ")");
  5. };
  6. var logException = function(ex) {
  7. logError(ex.name + " : " + ex.message, ex.fileName, ex.lineNumber);
  8. };
  9.  
  10. var originalOnError = window.onerror;
  11. window.onerror = function(errorMessage, fileName, lineNumber) {
  12. logError(errorMessage, fileName, lineNumber);
  13. if (originalOnError) {
  14. return originalOnError.apply(this, arguments);
  15. }
  16. };
  17.  
  18. // if it's Mozilla, Opera or webkit
  19. if (document.addEventListener) {
  20. var originalBind = $.fn.bind;
  21. var originalReady = $.fn.ready;
  22. $.fn.extend({
  23. bind: function(type, data, fn) {
  24. var proxy = jQuery.event.proxy(fn || data, function(event) {
  25. try {
  26. return (fn || data).apply(this, arguments);
  27. } catch (ex) {
  28. logException(ex);
  29. throw ex;
  30. }
  31. });
  32. var hasFn = !!fn;
  33. return originalBind.call(this, type, hasFn ? data : proxy, hasFn ? proxy : undefined);
  34. },
  35. ready: function(fn) {
  36. var handler = fn;
  37. if (!$.isReady) {
  38. handler = function() {
  39. try {
  40. fn.apply(document, arguments);
  41. } catch (ex) {
  42. logException(ex);
  43. throw ex;
  44. }
  45. };
  46. }
  47. return originalReady.call(this, handler);
  48. }
  49. });
  50. }
  51. })(jQuery);
Add Comment
Please, Sign In to add comment