jQuery 如何在这段代码中获取 div?

Posted

技术标签:

【中文标题】jQuery 如何在这段代码中获取 div?【英文标题】:jQuery How do I get the div in this code? 【发布时间】:2010-09-27 00:06:57 【问题描述】:

如何从这个(最后一个)列表项中获取 div?

目前我有这个,简直丑陋...关于更清洁的选择器/解决方案有什么建议吗?

var div = ul.append("<li><div></div></li>").contents("li:last-child")[0].children[0];

谢谢!

【问题讨论】:

顺便说一句:为什么在 LI 中使用 DIV? 【参考方案1】:

你也可以做一些不同的添加:

var div = $('<div/>'); 
// do whatever you need to do with the div
$('<li/>').appendTo(ul).append(div);

【讨论】:

【参考方案2】:

使用数组索引只返回 htmlElement 对象,因此删除了许多 jQuery 的有用功能,所以要小心。我倾向于这样处理:

var div = $("<div/>").appendTo($("<li/>").appendTo(ul));

从最里面到最外面,这会创建一个列表项,将其附加到您的列表中,创建一个 div,将其附加到您的新列表元素,然后返回 div,仍然包裹在 jQuery 中。如果你愿意,你可以附加一个数组索引来获取 HTMLElement:

var div = $("<div/>").appendTo($("<li/>").appendTo(ul))[0];

【讨论】:

【参考方案3】:

像这样?

var div = ul.append("<li><div></div></li>").contents("li:last-child > div")[0];

【讨论】:

【参考方案4】:

这个呢:

ul.append("<li><div></div></li>").contents("li:last-child > div").get(0);

【讨论】:

【参考方案5】:

这个,我想:

var div = ul.append('<li><div></div></li>').find("li:last div");

【讨论】:

【参考方案6】:

这个怎么样:

 var div = $('<li><div/></li>').appendTo(ul).find('div');

【讨论】:

【参考方案7】:

只是为了完整性:

var div = $('<div></div>').appendTo($("<li></li>").appendTo(ul));

【讨论】:

【参考方案8】:
var div = ul.append("<li><div></div></li>").find('div').get(0);

我想这就是你要找的。​​p>

【讨论】:

【参考方案9】:

我的解决方案是:

var div = ul.append("<li><div></div></li>").find("div:last");

【讨论】:

以上是关于jQuery 如何在这段代码中获取 div?的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有 jQuery 的情况下在 JavaScript 中打开 JSON 文件?

如何在这段代码中添加另一个按钮?

如何在这段代码中在 PHP 中使用 mysqli

jquery自动返回值

我将如何在这段代码中使用@mixin 和@include?

jquery中如何获取当前DOM对象里的子元素?