在其他浏览器中相当于Firefox的“错误控制台”

时间:2009-10-30 08:19:08

标签: javascript browser

在其他浏览器中是否有类似Firefox的“错误控制台”?我发现错误控制台很容易找到JavaScript错误,但似乎没有一种等效的简单方法可以在其他浏览器上查看错误消息。我对Internet Explorer,Opera和Google Chrome感兴趣。

发布脚本:我不是在寻找Firefox错误控制台的替代方案,对我来说没问题。我不需要FireBug。此外,我知道谷歌浏览器中的开发者工具,但我无法理解它。我只是想得到错误信息。有没有办法从中得到理智的错误信息?我无法做到。我的默认浏览器是Windows和Linux上的Chrome,但如果我在JavaScript中执行某些操作,我最终不得不切换到Firefox以从错误控制台获取错误消息。

7 个答案:

答案 0 :(得分:34)

您有以下选项

  • Chrome :按 Ctrl + Shift + J Cmd + < kbd> Mac上的选项 + J ,它将提供类似的功能。另请考虑在Chrome中查看JavaScript debugger
  • IE7 :内置任何内容。但请查看IE Developer Toolbar
  • IE8 :只需点击 F12 即可访问一些非常强大的内置工具。错误控制台位于Script标签
  • Firefox 只需使用FireBug F12 。内置工具现在很安静。
  • Opera :按 Ctrl + Shift + I Cmd + < kbd>选项 + 在Mac上)启动Opera Drangonfly这是一个集成到Opera浏览器中的全功能开发和调试工具
  • Safari :从Safari的偏好设置启用开发人员菜单。它将提供对各种工具的访问(错误控制台,Web Inspector,JavaScript Profiler等)。当然还有快捷方式,例如 Cmd + Alt + C 用于控制台

答案 1 :(得分:3)

我在Chrome中使用Ctrl + Shift + J,并且它有一些接近的东西。 IE - 有IE Developer Toolbar,我认为IE8有类似的东西,但让我们面对它,如果你使用IE进行Javascript调试,你基本上讨厌自己,并且在你的自尊方面有更严重的个人问题处理。

答案 2 :(得分:1)

these中的任何一个:

Hit F12 or Ctrl+Shift+I
right-click on any element on the page, and "Inspect Element"
Wrench button -> Tools -> Developer Tools

然后转到控制台选项卡

答案 3 :(得分:0)

如果你使用Firefox的错误控制台,你应该考虑Firebug插件。

还有Firebug Lite - 一个书签,它将Firebug的缩小版本带到其他浏览器。

答案 4 :(得分:0)

在Opera中,它位于Tools->Advanced->Error Console之下。我发现它非常方便。

答案 5 :(得分:0)

  • Safari:从Safari的偏好设置启用开发人员菜单,然后使用该菜单访问各种工具(错误控制台,Web Inspector,JavaScript Profiler,...)。当然也有快捷方式,如控制台的CMD + ALT + C. :)

答案 6 :(得分:0)

我在DOM加载之前已经开始练习以下内容:

(function(window, undefined){
  var debug_print = (location.search.indexOf('debug') != -1);
  if(window['console'] == undefined){
    var _logs = [];
    var _console = {
      log : function(){
        _logs.push({'msg':Array.prototype.slice.call(arguments, 0), 'type':null});
        this._out();
      },
      warn : function(){
        _logs.push({'msg':Array.prototype.slice.call(arguments, 0), 'type':'warn'});
        this._out();
      },
      error : function(){
        _logs.push({'msg':Array.prototype.slice.call(arguments, 0), 'type':'error'});
        this._out();
      },
      _out : function(){
        if(debug_print && typeof this['write'] == 'function'){
          this.write(_logs.pop());
        }
      },
      _print : function(){return debug_print;},
      _q : function(){return _logs.length;},
      _flush : function(){
        if(typeof this['write'] == 'function'){
          _logs.reverse();
          for(var entry; entry = _logs.pop();){
            this.write(entry);
          }
        }
      }
    }
    window['console'] = _console;
  }
})(window)

和domload之后(将它放在body标签的末尾):

(function(window, undefined){
  if(window['console']){
    if(console['_print']){
      var console_pane = document.createElement('div');
      console_pane.id = '_debug_console';
      document.body.appendChild(console_pane);
      console.write = function(log){
        var msg = [new Date(), log.msg].join("$/> ");
        var entry_pane = document.createElement('div');
        if(log.type !== undefined){
          entry_pane.className = log.type;
        };
        console_pane.appendChild(entry_pane);
        entry_pane.innerHTML = msg;
      };
      console._flush();
    };
  }
})(window)

这允许您完成所有基础操作并使用?debug查询字符串关闭和打开实际的控制台显示机制(它可以放在查询字符串中的任何位置)。为了使它看起来不那么残酷,你可能还想在下面的css中捆绑:

#_debug_console{
  background : #ffffff;
  margin: 0px;
  position: fixed;
  bottom: 0;
  width: 100%;
  height: 20%;
  font-family: Arial;
  font-size: 10px;
  border-top: solid 5px #ddd;
}
#_debug_console .error{
  color: #FF0000;
}
#_debug_console .warn{
  color: #DDDD00;
}