首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

浏览器兼容console对象的简洁解决方案

2013-11-19 
浏览器兼容console对象的简要解决方案不同浏览器或者版本之间对于console对象的支持不尽相同,而console方

浏览器兼容console对象的简要解决方案
不同浏览器或者版本之间对于console对象的支持不尽相同,而console方法在开发调试过程中都是不错的工具。难道要在上线前把所有console.xxxx去掉以保证某些浏览器不报错么。其实可以变通解决。

浏览器报找不到console对象,那我们就手动构造一个接口完全一致的console对象 置于window中。这里采用了空方法和空对象。如此一来即使在很old的浏览器中,含有console.xxxxx的代码依然不会报错,完美运行。

下面附上修复兼容代码,要置于置于第一句console.xxxx调用之前,否则没有意义。

(function (){//创建空console对象,避免JS报错if(!window.console)    window.console = {};var console = window.console;var funcs = ['assert', 'clear', 'count', 'debug', 'dir', 'dirxml',             'error', 'exception', 'group', 'groupCollapsed', 'groupEnd',             'info', 'log', 'markTimeline', 'profile', 'profileEnd',             'table', 'time', 'timeEnd', 'timeStamp', 'trace', 'warn'];for(var i=0,l=funcs.length;i<l;i++) {    var func = funcs[i];    if(!console[func])        console[func] = function(){};}if(!console.memory)    console.memory = {};})();

热点排行