如何用JavaScript在HTML中找到最后一个id
How to find last id in a HTML with JavaScript
我有一个问题与我的javascript,我需要在我的html文档中找到一个div的最后id。我可以通过查看它来找到它,但我希望它在JavaScript中是自动的。
<body>
<div id="start">
<div id="1">Text</div>
<div id="2">Text</div>
<div id="3">Text</div>
<div id="4">Text</div>
<div id="5">Text</div>
<div id="6">Text</div>
</div>
</body>
javascript: function setCookie() {
document.cookie = '1';
}
function startPage() {
var cookieValueInt = parseInt(document.cookie);
var secondPage = cookieValueInt + 1;
document.getElementById(document.cookie).style.visibility = 'visible';
document.getElementById(secondPage).style.visibility = 'visible';
if (cookieValueInt == 1) {
document.getElementById('leftarrow').style.visibility = 'hidden';
}
}
function nextPage() {
var cookieValueInt = parseInt(document.cookie);
var secondPage = cookieValueInt + 1;
var newCookieValue = cookieValueInt + 2;
document.getElementById(document.cookie).style.visibility = 'hidden';
document.getElementById(secondPage).style.visibility = 'hidden';
document.getElementById(newCookieValue).style.visibility = 'visible';
document.getElementById(newCookieValue + 1).style.visibility = 'visible';
document.getElementById('leftarrow').style.visibility = 'visible';
document.cookie = newCookieValue;
}
function previousPage() {
var cookieValueInt = parseInt(document.cookie);
var secondPage = cookieValueInt + 1;
var newCookieValue = cookieValueInt - 2;
document.getElementById(document.cookie).style.visibility = 'hidden';
document.getElementById(secondPage).style.visibility = 'hidden';
document.getElementById(newCookieValue).style.visibility = 'visible';
document.getElementById(newCookieValue + 1).style.visibility = 'visible';
document.cookie = newCookieValue;
cookieValueInt = parseInt(document.cookie);
if (cookieValueInt == 1) {
document.getElementById('leftarrow').style.visibility = 'hidden';
}
}
您可以尝试使用jQuery并使用以下代码:
$(document).ready(function(){
var attrId = $('#start').children('div:last-child').attr('id');
});
另外,注意你的HTML是无效的,因为你缺少<</p>
请勿使用数字作为id。虽然它在HTML5中技术上是有效的,但它对id的使用很糟糕,而且很容易出现意外的重复。我建议使用<div id="someprefix_1">
等等。您总是可以取ID并修剪前缀以获得号码。
除此之外,这将工作得很好(除了IE7和以下版本):
var divsWithIDs = document.querySelectorAll("div[id]"),
lastDiv = divsWithIDs[divsWithIDs.length-1];
编辑:如果你把这个和前缀的想法结合起来,你可以很容易地得到"具有这种ID的最后一个元素":
var divsWithPrefixedIDs = document.querySelectorAll("div[id^='someprefix_']"),
lastDiv = dovsWithPrefixedIDs[divsWithPrefixedIDs.length-1];
我建议使用容器:
var parentEl = document.getElementById("start");
var id = parentEl.children(parentEl.children.length-1).id;
另外,您不应该使用数字作为id,参见链接的答案。修改后的代码
使用getElementsByTagName并从数组中获取最后一个?
https://developer.mozilla.org/en-US/docs/DOM/element.getElementsByTagName另外,我的建议是使用jQuery:)
相关文章:
- 如何查找流星集合中最后一个元素/对象的id
- jQuery - 选择具有相同 ID 的组的最后一个元素
- 将 URL 的最后一个字符串与 Li 的 ID 名称进行比较
- 如何在TR的最后一个TD中添加事件或将ID属性添加到IMG标签
- 为什么当我在 Emberjs 中最后用“id”刷新 url 时,我得到一个空白应用程序
- 如何获取最后一个元素并知道id
- 如何使用jquery获取最后一个元素id值
- 为什么我在循环之后只得到最后一个id道具
- 我有DIV和它的子DIV,我想用jQuery选择最后一个DIV.父DIVS具有id
- 锚点上的动态 ID 未在其他锚点上触发最后一个锚点 PHP js PDO
- 单击DIV上的所有ID时如何显示最后一个ID
- 无法使用数据库中的最后一个值自动更新注册ID
- 如何使用jQuery获取文本字段id的最后一个数字
- 自定义正则表达式过滤掉最后一个url路径中的ID
- 只需要获取ID的一部分最后一个下划线之后的所有内容
- JSON文件只显示最后一个条目,尽管id不同
- 显示id中最后一个数字小于i的元素
- 如何用JavaScript在HTML中找到最后一个id
- 从id属性获取最后一个字符
- 当我创建新包并添加两个或更多盒子时,所有盒子的id将与最后一个盒子的id相同