gpt4 book ai didi

javascript - 如何选择下一个没有特定 CSS 类的 div

转载 作者:搜寻专家 更新时间:2023-10-31 22:49:49 24 4
gpt4 key购买 nike

<div id="button">
Click me
</div>

<div id=item1> //loads with a dashed border
</div>

<div id=item2> //loads with a solid border
</div>

<div id=item3> //loads with a solid border
</div>

脚本部分:

var eventNext = document.getElementById("button");
eventNext.addEventListener("click", move, false);

function move()
{

}

我应该在 move 函数中放置什么来获取下一个没有虚线边框的 div 项目,并使其变为虚线,并将当前项目的边框变为实线? (如果有下一项)?

最佳答案

var eventNext = document.getElementById("button");
eventNext.addEventListener("click", move, false);

function move() {
if( eventNext ) {
if( eventNext.id !== 'button' ) {
eventNext.className = 'solidBorder';
}
eventNext = eventNext.nextElementSibling;
if( eventNext ) {
eventNext.className = 'dashBorder';
}
}
}

.dashBorder {
border: 2px dashed blue;
}
.solidBorder{
border: 2px solid blue;
}

或者使用 jquery

var eventNext = $("#button").bind("click", move);

function move() {
if( eventNext.length ) {
if( eventNext.attr('id') !== 'button' ) {
eventNext.attr( 'class', 'solidBorder' );
}
eventNext = eventNext.next();
if( eventNext.length ) {
eventNext.attr( 'class', 'dashBorder' );
}
}
}

如果您需要支持不支持 nextElementSibling 的浏览器,请改用此函数。

function next( elem ) {
while( (elem = elem.nextSibling) && (elem.nodeType !== 1) );
return elem;
}

关于javascript - 如何选择下一个没有特定 CSS 类的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8291248/

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