Wednesday, 29 May 2013

jQuery.log

To avoid checks if window.console is available:

  1. /****************************************
  2. * jQuery extensions
  3. ****************************************/
  4. jQuery.extend({
  5. "log": window.console ? window.console : { _isStubObject: true }
  6. });
  7. if (!jQuery.log._init) {
  8. jQuery.log._init = function (logLevel) {
  9. if (!jQuery.log._logLevels) {
  10. jQuery.log._logLevels = {
  11. All: 0,
  12. Debug: 1,
  13. Info: 2,
  14. Warn: 3,
  15. Error: 4
  16. };
  17. }
  18. if (!logLevel) logLevel = jQuery.log._logLevels.All;
  19.  
  20. if (!jQuery.log._unsupported_message) jQuery.log._unsupported_message = function (functionName) {
  21. if (window && window.console) {
  22. if (window.console.warn)
  23. window.console.warn("console." + functionName + "() is not supported!");
  24. else if (window.console.log)
  25. window.console.log("WARNING: console." + functionName + "() is not supported!");
  26. }
  27. };
  28.  
  29. if (!jQuery.log.memory) jQuery.log.memory = { _isStubObject: true };
  30. if (!jQuery.log.memory.jsHeapSizeLimit) jQuery.log.memory.jsHeapSizeLimit = -1;
  31. if (!jQuery.log.memory.totalJSHeapSize) jQuery.log.memory.totalJSHeapSize = -1;
  32. if (!jQuery.log.memory.usedJSHeapSize) jQuery.log.memory.usedJSHeapSize = -1;
  33.  
  34. if (!jQuery.log.assert) jQuery.log.assert = function () { jQuery.log._unsupported_message("assert"); };
  35. if (!jQuery.log.clear) jQuery.log.clear = function () { jQuery.log._unsupported_message("clear"); };
  36. if (!jQuery.log.count) jQuery.log.count = function () { jQuery.log._unsupported_message("count"); };
  37. if (!jQuery.log.debug) {
  38. jQuery.log._unsupported_message("debug");
  39. jQuery.log.debug = window.console.log;
  40. };
  41. if (!jQuery.log.dir) jQuery.log.dir = function () { jQuery.log._unsupported_message("dir"); };
  42. if (!jQuery.log.dirxml) jQuery.log.dirxml = function () { jQuery.log._unsupported_message("dirxml"); };
  43. if (!jQuery.log.error) {
  44. jQuery.log._unsupported_message("error");
  45. jQuery.log.error = window.console.log;
  46. };
  47. if (!jQuery.log.exception) jQuery.log.exception = function () { jQuery.log._unsupported_message("exception"); };
  48. if (!jQuery.log.group) jQuery.log.group = function () { jQuery.log._unsupported_message("group"); };
  49. if (!jQuery.log.groupCollapsed) jQuery.log.groupCollapsed = function () { jQuery.log._unsupported_message("groupCollapsed"); };
  50. if (!jQuery.log.groupEnd) jQuery.log.groupEnd = function () { jQuery.log._unsupported_message("groupEnd"); };
  51. if (!jQuery.log.info) {
  52. jQuery.log._unsupported_message("info");
  53. jQuery.log.info = window.console.log;
  54. };
  55. //if (!jQuery.log.log) jQuery.log.log = function () { jQuery.log._unsupported_message("log"); };
  56. if (!jQuery.log.markTimeline) jQuery.log.markTimeline = function () { jQuery.log._unsupported_message("markTimeline"); };
  57. if (!jQuery.log.profile) jQuery.log.profile = function () { jQuery.log._unsupported_message("profile"); };
  58. if (!jQuery.log.profileEnd) jQuery.log.profileEnd = function () { jQuery.log._unsupported_message("profileEnd"); };
  59. if (!jQuery.log.table) jQuery.log.table = function () { jQuery.log._unsupported_message("table"); };
  60. if (!jQuery.log.time) jQuery.log.time = function () { jQuery.log._unsupported_message("time"); };
  61. if (!jQuery.log.timeEnd) jQuery.log.timeEnd = function () { jQuery.log._unsupported_message("timeEnd"); };
  62. if (!jQuery.log.timeStamp) jQuery.log.timeStamp = function () { jQuery.log._unsupported_message("timeStamp"); };
  63. if (!jQuery.log.trace) jQuery.log.trace = function () { jQuery.log._unsupported_message("trace"); };
  64. if (!jQuery.log.warn) {
  65. jQuery.log._unsupported_message("warn");
  66. jQuery.log.warn = window.console.log;
  67. };
  68.  
  69. jQuery.log.info("INFO: jQuery.log is initialized.");
  70. };
  71. }
  72. jQuery.log._init();

No comments:

Post a Comment

Note: only a member of this blog may post a comment.