如何从此(最后一个)列表项中获取div?
目前我有这个,这只是简单的丑陋...对清洁选择器/解决方案的任何建议?
var div = ul.append("<li><div></div></li>").contents("li:last-child")[0].children[0];
谢谢!
答案 0 :(得分:2)
您也可以采用不同的方式添加:
var div = $('<div/>');
// do whatever you need to do with the div
$('<li/>').appendTo(ul).append(div);
答案 1 :(得分:1)
使用array-index只返回HTMLElement对象,因此删除了很多jQuery的有用功能,所以要小心。我倾向于这样接近它:
var div = $("<div/>").appendTo($("<li/>").appendTo(ul));
从最里面到最外层,这会创建一个列表项,将它附加到列表中,创建一个div,将它附加到新的list元素,然后返回div,仍然包含在jQuery中。如果您愿意,可以附加一个数组索引来获取HTMLElement:
var div = $("<div/>").appendTo($("<li/>").appendTo(ul))[0];
答案 2 :(得分:0)
喜欢这个吗?
var div = ul.append("<li><div></div></li>").contents("li:last-child > div")[0];
答案 3 :(得分:0)
这个怎么样:
ul.append("<li><div></div></li>").contents("li:last-child > div").get(0);
答案 4 :(得分:0)
我认为:
var div = ul.append('<li><div></div></li>').find("li:last div");
答案 5 :(得分:0)
这个怎么样:
var div = $('<li><div/></li>').appendTo(ul).find('div');
答案 6 :(得分:0)
仅为了完整性:
var div = $('<div></div>').appendTo($("<li></li>").appendTo(ul));
答案 7 :(得分:0)
var div = ul.append("<li><div></div></li>").find('div').get(0);
我认为这就是你要找的东西。
答案 8 :(得分:0)
我的解决方案是:
var div = ul.append("<li><div></div></li>").find("div:last");