這個代碼DOEN的工作..爲什麼jQuery不能提醒HTML標籤包含身體標籤?
alert($('<body><div id="tmp">111</div></body>').find("#tmp").text());
但這個工程
alert($('<div><div id="tmp">111</div></div>').find("#tmp").text());
這是爲什麼?謝謝..
這個代碼DOEN的工作..爲什麼jQuery不能提醒HTML標籤包含身體標籤?
alert($('<body><div id="tmp">111</div></body>').find("#tmp").text());
但這個工程
alert($('<div><div id="tmp">111</div></div>').find("#tmp").text());
這是爲什麼?謝謝..
您的$('.....
代碼不是選擇器。它試圖從你的HTML中創建一個新的DOM元素。
我猜它不適用於<身體>標籤,因爲每頁只能有一個身體標籤。
我覺得這個解釋不完整。例如,即使是「p」也不行。嘗試'警報($('
有趣。也許@阿倫上面是正確的。 find和filter之間的區別在於它是否會匹配根元素。過濾器將匹配根和子元素,而查找將只匹配子項(嵌套或其他)。 –
它看起來像HTML解析被解纏body
元素,所以jQuery對象是具有tmp
元素作爲根元素不是body
元素,讓你的find
方法將無法正常工作,您需要使用filter
console.log($('<body><div id="tmp">111</div></body>').filter("#tmp").text());
或在這種情況下
console.log($('<body><div id="tmp">111</div></body>').text());
我已經看到了一些以前的職位,這種行爲以及在HTML解析器的行爲就像這樣,當它與像'templat一些涉及標籤e'等 –