2016-05-15 14 views
5

, ben Chrome'un JavaScript konsolunda aşağıdaki kodu çalıştırdığınızda, aşağıdaki çıktıyı almak Neden Chrome'un JS Console bir jQuery nesnesi yerine bir DOM öğesini döndürüyor? Örneğin

$("p") 

: Gördüğümüz gibi

<p>...</p> 

, bir jQuery yerine bir DOM öğesi olsun nesne. Ancak, Chrome'un JS konsolunu kullanmadığımda ve kodu bir web sayfasında doğrudan bazı console.log() ile birlikte kullanıyorum, bir jQuery nesnesi alıyorum.

Yukarıdan
[object Object]{0: HTMLParagraphElement {...}, 1: HTMLParagraphElement {...}, ... 

, doğrudan Chrome'un JS konsolunu kullanırken, seçici hep 'bir DOM elemanı yerine bir jQuery nesnesi döndüren olduğunu anlıyoruz. Kenar tarayıcısının JS konsolunda aynı seçici kodu test ettiğimde, doğru jQuery nesnesini alıyorum. Chrome ile ilgili sorun nedir?

DÜZENLEME: Chrome'un konsolunda varsayılan olarak enter image description here

+0

'jQuery (" p ")' ile aynı? –

+0

No @ Roamer-1888. Ben 'jQuery' tanımlı değil olsun. –

+0

O zaman muhtemelen '$ '' jQuery' değil. –

cevap

4

, $ özel seçici fonksiyonudur. Eğer $ üzerine jQuery veya başka bir şey yüklü değil bir sayfada konsolda sadece $ çalıştırmak olsaydı, aşağıdaki görür:

function $(selector, [startNode]) { [Command Line API] } 

Ancak eğer sayfa $ değeri üzerine yazmış daha sonra konsol, sayfadaki değeri kullanacaktır. Bu yüzden sayfa jQuery'yi yüklediyse, jQuery nesnesi alırsınız.

İlgili konular