gpt4 book ai didi

javascript - 通过Jquery查找下一个相同类型的元素

转载 作者:行者123 更新时间:2023-11-28 17:59:20 25 4
gpt4 key购买 nike

大家好,请查看下面的 html。

    <div class="mainDiv2">
<a href="home00.html" >home00</a>
<a href="home0.html" >home0</a><br /><br />
<h1>Employee List</h1>
<a href="home.html" >home</a><br /><br />
<a href="home2.html" >home2</a>
<a href="home3.html" >home3</a>
<h1>Employee List2</h1>
<a href="home4.html">home4</a>
<a href="home5.html">home5</a>
<h1>Employee List3</h1>
<a href="home6.html">home6</a>
<a href="home7.html">home7</a>
<a href="home8.html">home8</a>
<a href="home9.html" class="active">home9</a>

<p>
{!PageTitle}
</p>
</div>
<div>
<a class="btn btn-default" id="prevRec" href="#">Pre</a>
<a class="btn btn-default" id="nextRec" href="#">Next</a>
</div>

我想要的就是这个。如果在 href 上实现了类 .active 那么我想获取相同类型的上一个和下一个元素 href 值。在当前 html 中它将返回

上一篇:home8.html下一页:空

以及以下情况

    <div class="mainDiv2">
<a href="home00.html" >home00</a>
<a href="home0.html" >home0</a><br /><br />
<h1>Employee List</h1>
<a href="home.html" >home</a><br /><br />
<a href="home2.html" >home2</a>
<a href="home3.html" >home3</a>
<h1>Employee List2</h1>
<a href="home4.html">home4</a>
<a href="home5.html">home5</a>
<h1>Employee List3</h1>
<a href="home6.html" class="active">home6</a>
<a href="home7.html">home7</a>
<a href="home8.html">home8</a>
<a href="home9.html" >home9</a>

<p>
{!PageTitle}
</p>
</div>

它会返回

上一篇:home5.html下一页:home7.html

注意:请记住 a 标签之间有 h1 标签.. 只是为了让你们知道我已经有了这个问题的答案.. 但我想要不同的解决方案。我认为这不是正确的解决方案。

如果这是我的答案:

 $(document).ready(function () {
var currActive = $('div[class="mainDiv2"]').find('a.active');

if ($(currActive).nextAll('a').length > 0) {
var nextHref = $(currActive).nextAll('a').attr("href")
$("#nextRec").attr("href", nextHref);
}
else
$("#nextRec").attr("href", 'http://www.google.com').text("Home");

//--------------

if ($(currActive).prevAll('a').length > 0) {
var preHref = $(currActive).prevAll('a').attr("href")
$("#prevRec").attr("href", preHref);
}
else
$("#prevRec").attr("href", 'http://www.google.com').text("Home");
});

谢谢..

最佳答案

要实现此目的,您可以使用 prevAll()nextAll() 来获取所需的元素,即使之间存在 h1他们。试试这个:

var $active = $('a.active');
var prev = $active.prevAll('a').first().attr('href');
var next = $active.nextAll('a').first().attr('href');

console.log(prev);
console.log(next);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="mainDiv2">
<a href="home00.html">home00</a>
<a href="home0.html">home0</a><br /><br />
<h1>Employee List</h1>
<a href="home.html">home</a><br /><br />
<a href="home2.html">home2</a>
<a href="home3.html">home3</a>
<h1>Employee List2</h1>
<a href="home4.html">home4</a>
<a href="home5.html">home5</a>
<h1>Employee List3</h1>
<a href="home6.html" class="active">home6</a>
<a href="home7.html">home7</a>
<a href="home8.html">home8</a>
<a href="home9.html">home9</a>
<p>
{!PageTitle}
</p>
</div>

关于javascript - 通过Jquery查找下一个相同类型的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43862813/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com