$("#prev").click(function() {
var elems = $('#smallTitle li a');
var prev = elems.filter('.action');
if ( prev.length === 0 ) prev = elems.last();
elems.not( prev.addClass('action') ).removeClass('action');
});
$("#next").click(function() {
var elems = $('#smallTitle li a');
var next = elems.filter('.action').next();
if ( next.length === 0 ) next = elems.first();
elems.not( next.addClass('action') ).removeClass('action');
});
.SwitchURL-small-list{
display:flex;
list-style:none;
font-size: 22px;
font-weight:bold;
}
.SwitchURL-smaill-item{
border-bottom: 0px solid#AE96DA;
padding: 0 1%;
margin-bottom: 1%;
font-size: 20px;
}
.SwitchURL-small-link{
color: #CFC1E9;
margin-right: 15px;
margin-left: 15px;
}
.SwitchURL-small-link:hover{
color: #AE96DA;
}
.SwitchURL-small-link.action {
border-bottom: 2px solid#AE96DA;
color: #AE96DA;
margin-right: 15px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul class="SwitchURL-small-list" id="smallTitle">
<button id="prev" type="button"> > </button>
<li class="SwitchURL-small-item">
<a href="AA" class="SwitchURL-small-link action" id="SwitchURL0">AA</a>
</li>
<li class="SwitchURL-small-item">
<a href="BB" class="SwitchURL-small-link" id="SwitchURL1">BB</a>
</li>
<li class="SwitchURL-small-item">
<a href="CC" class="SwitchURL-small-link" id="SwitchURL2">CC</a>
</li>
<li class="SwitchURL-small-item">
<a href="DD" class="SwitchURL-small-link" id="SwitchURL3">DD</a>
</li>
<li class="SwitchURL-small-item">
<a href="EE" class="SwitchURL-small-link" id="SwitchURL4">EE</a>
</li>
<button id="next" type="button"> > </button>
</ul>
我有一个<li>
元素,里面使用href让用户点击到对应的文件。
<li>
的样式如下:
现在<li>
的选择是“AA”,当我点击下一个(>)按钮时,
<li>
的选择会动态更改为“BB”,如下图所示:
或者当我点击上一个(<)按钮时,
<li>
的选择会动态更改为“EE”,如下图所示:
并且现在显示的“AA”文件也会动态更改为“BB”或“EE”文件。
提示:可能需要使用removeClass("action")
和addClass("action")
来更改<li>
,但我尝试了很多次,无法实现我的目标。
有人能帮我吗?谢谢 ;]
<button>
元素没有被包含在<li>
中,那么它们不应该在<ul>
内部。 - Phil