我有以下标记:
<div id="div-1">1st div</div>
<div id="div-2">2nd div</div>
<div id="div-3">3rd div</div>
<div id="div-4">4th div</div>
<div id="div-5">5st div</div>
如何测试第5个div是否是页面上id为div-%s的最后一个div?
答案 0 :(得分:5)
你可以这样做:
var lastDivId = $('div:last').attr('id');
if(lastDivId === 'div-5'){
//the last div is the one with id = div-5
编辑 - 甚至更好(通过这种方式,您只考虑以id
开头的div-
的div:
var lastDivId = $('div[id^=div-]:last').attr('id');
if(lastDivId === 'div-5'){
//the last div is the one with id = div-5
答案 1 :(得分:1)
效率不高,但至少应该有效。
var i = 0,
el;
do {
el = document.getElementById( 'div-' + i );
i += 1;
} while( el );
// now el contains a reference to the last div element with an id of your syntax
答案 2 :(得分:1)
试试这个。它将在其ID中选择文本div-
的最后一个div并告诉您其ID。只是
if ($('div[id^=div-]:last').attr('id')=='div-5'){
alert('div 5 is the last div');
else
alert('div 5 is NOT the last div');
答案 3 :(得分:0)
$(function()
{
alert($("div:last").attr("id"));
});
会给你最后一个div
编辑:
你也可以得到最后一个孩子
$("div :last-child")
希望这有帮助............
答案 4 :(得分:0)
只是另一种方式
if ($('#div-5 + div[id^="div-"]').length === 0) {
/* div-5 is last div */
}
因此您可以避免同时调用.attr()
方法
答案 5 :(得分:0)
我会使用div的容器元素并使用伪选择器:last来获取最后一个孩子。
var res = ($("body div:last")[0].id == "div-5") ? alert('last div is div-5') : alert('last div is not div-5');