如何从这个(最后一个)列表项中获取 div?
目前我有这个,这只是丑陋......关于更清洁的选择器/解决方案的任何建议?
var div = ul.append("<li><div></div></li>").contents("li:last-child")[0].children[0];
谢谢!
如何从这个(最后一个)列表项中获取 div?
目前我有这个,这只是丑陋......关于更清洁的选择器/解决方案的任何建议?
var div = ul.append("<li><div></div></li>").contents("li:last-child")[0].children[0];
谢谢!
您也可以进行一些不同的添加:
var div = $('<div/>');
// do whatever you need to do with the div
$('<li/>').appendTo(ul).append(div);
使用数组索引只返回 HTMLElement 对象,因此删除了许多 jQuery 的有用功能,所以要小心。我倾向于以这种方式处理它:
var div = $("<div/>").appendTo($("<li/>").appendTo(ul));
从最里面到最外面,这会创建一个列表项,将其附加到您的列表中,创建一个 div,将其附加到您的新列表元素,然后返回 div,仍然包裹在 jQuery 中。如果你愿意,你可以附加一个数组索引来获取 HTMLElement:
var div = $("<div/>").appendTo($("<li/>").appendTo(ul))[0];
像这样?
var div = ul.append("<li><div></div></li>").contents("li:last-child > div")[0];
那这个呢:
ul.append("<li><div></div></li>").contents("li:last-child > div").get(0);
这一点,我认为:
var div = ul.append('<li><div></div></li>').find("li:last div");
这个怎么样:
var div = $('<li><div/></li>').appendTo(ul).find('div');
只是为了完整性:
var div = $('<div></div>').appendTo($("<li></li>").appendTo(ul));
var div = ul.append("<li><div></div></li>").find('div').get(0);
我想这就是你要找的。
我的解决方案是:
var div = ul.append("<li><div></div></li>").find("div:last");