Ответ 1
Я раскрыл причину этого в моем собственном вопросе.
Консоль вводит свою собственную функцию (только сокращенную) для document.getElementById()
, с псевдонимом $
, , которая затеняет jQuery $
. Простой способ проверить это: когда вы находитесь в точке останова, а jQuery, похоже, сломается, сравните следующее в консоли:
-
jQuery
-
$
-
window.$
Первый и последний будет jQuery надлежащим, локальный $
выглядит примерно так:
function () {
return document.getElementById.apply(document, arguments)
}
Это потому, что код, запускаемый с консоли, завернут в оператор with
:
with (window ? window.console._commandLineApi : {}) {
with (window) {
// the actual code you typed in here
}
}
и window._commandLineApi.$
- это функция, которая затеняет jQuery.
Нашел ошибку в Chromium для этого: http://code.google.com/p/chromium/issues/detail?id=70969