17

jQuery セレクターが Chrome コンソールで機能していないようです。どのタイプのセレクターも「null」を返します。ただし、スクリプトは JavaScript を適切に実行します。

他の誰かがこの変更に気付いたか、修正を知っていますか?

ありがとう。

4

2 に答える 2

17

私は自分の質問でこれの原因を明らかにしました。

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

于 2011-02-12T03:44:40.070 に答える
0

コンソールで次のコマンドを実行するだけで機能します。

$ = jQuery
于 2017-05-08T04:31:46.970 に答える