gpt4 book ai didi

jquery - 上下文 jQuery 选择器找不到某些元素,为什么?

转载 作者:行者123 更新时间:2023-12-03 23:40:57 24 4
gpt4 key购买 nike

如果我明白 context参数正确,如 documentation 中所述, p以下是预期的两个项目的集合:

const text = "<body><div class='a'> <p>Test</p> <p>Test 2</p> </div></body>";
const p = $("p", text);
但是为什么以下都没有返回结果?
const d = $("div", text);
const b = $("body", text);
JS Fiddle

最佳答案

如果您查看从 text 创建的 jQuery 对象的外层 HTML ,您会看到 body元素被移除。这是因为您不能附加 body元素使用jQuery。一个应该已经存在于 DOM 中,并且您不能附加另一个。
因此没有 body要在 text 中查找的元素jQuery 对象。这是一个演示:

const text = $("<body><div class='a'> <p>Test</p> <p>Test 2</p> </div></body>");
console.log(text[0].outerHTML) // no body!
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

正如你在上面的输出中看到的, div然后成为 jQuery 对象的根元素。
从那里你可以有效地执行 $('div').find('div') - IE。试图在包含它的元素中查找该元素。因此,没有返回任何内容。

关于jquery - 上下文 jQuery 选择器找不到某些元素,为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65916338/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com