It appears that jQuery selectors are not functioning in the Chrome Console. Any type of selector returns \"null\". The scripts do properly run the javascript, however. >
I uncovered the cause of this in my own question.
The console injects its own function (just a shorthand) for document.getElementById()
, aliased to $
, which shadows jQuery's $
. Easy way to check this: when you're at a breakpoint, and jQuery seems to be broken, compare the following in the console:
jQuery
$
window.$
The first and last will be jQuery proper, the local $
is something like:
function () {
return document.getElementById.apply(document, arguments)
}
This is because code run from the console is wrapped in a with
statement:
with (window ? window.console._commandLineApi : {}) {
with (window) {
// the actual code you typed in here
}
}
and window._commandLineApi.$
is the function that shadows jQuery.
Found the bug in Chromium for this: http://code.google.com/p/chromium/issues/detail?id=70969