为什么jquery无法提醒HTML标签包含body标签?

时间:2013-11-25 03:47:31

标签: jquery

此代码不起作用..

alert($('<body><div id="tmp">111</div></body>').find("#tmp").text());

但这有效

alert($('<div><div id="tmp">111</div></div>').find("#tmp").text());

为什么?感谢..

2 个答案:

答案 0 :(得分:3)

看起来html解析正在展开body元素,因此jQuery对象将tmp元素作为根元素而不是body元素,因此您的{{1 }}方法不起作用,您需要使用find

filter

或在这种情况下

console.log($('<body><div id="tmp">111</div></body>').filter("#tmp").text());

答案 1 :(得分:1)

您的$('.....代码不是选择器。它正在尝试从您的HTML中创建一个新的DOM元素。

我猜它不适用于&lt; body&gt;标签,因为每页只能有一个正文标记。