2

Chrome で動作する単純な関数がありますが、Internet Explorer (9) ではクラッシュします。

function go() {
    var selector = "span";
    console.log($);
    answer = $(selector); // errors on this line.
    return answer;
}

どの出力:

LOG: function(a,b){return new e.fn.init(a,b,h)} 
SCRIPT438: Object doesn't support this property or method 

jQueryがそこにあるよう$("span")で、IEコンソールで実行すると動作します。だから私は困惑しています。以前にこの問題を経験した人はいますか?

4

1 に答える 1

4

IE はconsole.log、デバッガーが開いている場合にのみ機能を提供します。を削除するconsole.log($);と、動作するはずです。

または、次のようにパッチを適用できます。

if (!window.console) {
    (function() {
      var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
      "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
      window.console = {};
      for (var i = 0; i < names.length; ++i) {
        window.console[names[i]] = function() {};
      }
    }());
}
于 2012-06-26T15:30:32.300 に答える