我在无序列表上有一个句柄(对于我的示例,我将调用句柄 Var1),并且希望能够将其最后一个 li 分配给一个变量。我尝试 Lastli = var1.lastChild
了我认为可行的唯一方法,但没有。我似乎无法仅使用 Javascript 而不是 jQuery 找到答案,感谢任何帮助。
问问题
23938 次
5 回答
22
您可以选择父元素并使用 lastChild 属性。
var container = document.getElementsByTagName("ul")[0];
var lastchild = container.lastChild;
或者您将所有项目选择到一个数组中并获取最后一个项目。这是一个简单的例子:
var items = document.querySelectorAll("li");
var lastchild = items[items.length-1];
于 2012-11-09T13:29:11.907 回答
7
您可以选择所有“li”并取最后一个。就像是:
var myLi = document.getElementsByTagName('li');
var lastLi = myLi[myLi.length-1];
于 2012-11-09T13:24:58.903 回答
3
让我们考虑一个例子
<ul >
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
要获取列表的最后一个孩子,您可以简单地使用 queryselector
document.querySelector('li:last-child'); //this will return Milk which is the last child of the list
document.querySelector('li:first-child') OR document.querySelector('li'); //both will give you the first child of the list
假设您想要第 n 个孩子,您可以使用以下语法:
document.querySelector('li:nth-child(2)'); //it will return the second child (here Tea)
如果您想要给定列表中的所有列表项:
document.getElementsByTagName('li') //(Will return the whole list)here i am using tagname. It can be also applied on classname or element id
于 2019-06-03T17:20:15.500 回答
2
试试这个:.childNodes[childNodes.length - 1]
于 2012-11-09T13:24:45.650 回答
1
要么ulReference.children[ulReference.children.length -1]
要么ulReference.childNodes[ulReference.childNodes.length -1]
。两者的区别可以看这里
于 2012-11-09T13:26:12.493 回答