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

console.logIE仅在调试器打开时提供功能。删除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 回答