的字符串 -使用jQuery如果我運行此代碼搜索HTML
var html= '<html><head></head><body><div class="bar"></div></body></html>';
console.log($(html).find('div'));
我沒有得到任何結果返回,如果我運行這段代碼 -
var html= '<html><head></head><body><div><div class="bar"></div></div></body></html>';
console.log($(html).find('div'));
然後我得到的返回一個結果 - 內部div(<div class="bar"></div>
)。我會期望第一個代碼片段返回一個結果,第二個片斷返回兩個結果。
同樣,這個代碼不返回任何結果 -
var code = $("<div id='foo'>1</div><div id='bar'>2</div>");
console.log(code.find('div'));
但是這個代碼警報「DIV」兩次 -
var code = $("<div id='foo'>1</div><div id='bar'>2</div>");
code.each(function() {
alert(this.nodeName);
})
鑑於第二片斷的結果,我本來期望第一碼片段返回兩個結果。有人能解釋爲什麼我會得到我得到的結果嗎?
http://jsfiddle.net/ipr101/GTCuv/
我改變了'console.log'到'alert',並驚動了'[對象的對象]',所以它一定是發現了什麼...... –
@Eran齊默爾曼:這是因爲jQuery總是返回一個對象,而不管爲選擇器找到多少匹配。 –
我假設[object Object]是指jQuery返回的空數組。 – ipr101