美文网首页
ie9 在打开控制台可以正常加载页面,否则加载失败

ie9 在打开控制台可以正常加载页面,否则加载失败

作者: JerryDai | 来源:发表于2018-05-29 20:43 被阅读143次

    最近在调试个 bug,不开启控制台的话死活页面加载不出来。开启了控制台后页面就显示正常。
    经过一顿搜索,得知在 ie9 下,如果不开启控制台的话,默认是没有 console 对象的,开启后则有。

    汇总网上的解决方案,改造如下。新增 console.js,内容如下:

    try{
        console.log(11)
    }catch (e){
        ;(function(g) {
            'use strict';
            var _console = g.console || {};
            var methods = ['assert', 'clear', 'count', 'debug', 'dir', 'dirxml', 'exception', 'error', 'group', 'groupCollapsed', 'groupEnd', 'info', 'log', 'profile', 'profileEnd', 'table', 'time', 'timeEnd', 'timeStamp', 'trace', 'warn'];
    
            var console = {version: '0.1.0'};
            var key;
            for(var i = 0, len = methods.length; i < len; i++) {
                key = methods[i];
                console[key] = function (key) {
                    return function () {
                        if (typeof _console[key] === 'undefined') {
                            return 0;
                        }
    
                        Function.prototype.apply.call(_console[key], _console, arguments);
                    };
                }(key);
            }
    
            g.console = console;
        }(window));
    }
    

    在具体页面引用的时候使用只有 ie9 才能识别的脚本

    <!--[if IE 9]>
        <script src="console.js" type="text/javascript"></script>
    <![endif]-->
    
    

    参考方案

    https://yanhaijing.com/javascript/2014/11/03/use-console.js/

    文章出自 http://blog.wordty.cn

    相关文章

      网友评论

          本文标题:ie9 在打开控制台可以正常加载页面,否则加载失败

          本文链接:https://www.haomeiwen.com/subject/gixzjftx.html