我正在嘗試製作某種時間表。當我將鼠標懸停在內容上時,我將更改內容顏色以及歲月和子彈指示器的顏色。但是,我不知道如何保持先前的元素(年份和子彈),例如當我轉到第二或第三元素時突出顯示。怎麼做?如果我沒有清楚地解釋自己,我很樂意以其他方式解釋它,如果需要的話。我至今:如何更改鼠標懸停在當前元素上的以前的元素?
$('.tml_btn').on('mouseover', function() {
$('.active_content').removeClass('active_content');
$(this).addClass('active_content');
var content_id = $(this).attr('id').replace('tml_btn_', '');
$('.tml_el').removeClass('active_bullet');
$('#tml_el_' + content_id).addClass('active_bullet');
});
.tml_content li {
width: 20px;
}
.bullet {
width: 20px;
height: 20px;
border-radius: 20px;
background: #adadad;
margin: 0 auto;
}
.tml_bar .tml_el {
display: inline-block;
margin-right: 50px;
text-align: center;
}
.active_content {
color: #3A9296;
}
.active_bullet {
color: #3A9296;
}
.active_bullet .bullet {
background: #3A9296;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='timeline'>
<div class='tml_content'>
<ul>
<li class='tml_btn active_content' id='tml_btn_1'>content 1</li>
<li class='tml_btn' id='tml_btn_2'>content 2</li>
<li class='tml_btn' id='tml_btn_3'>content 3</li>
<li class='tml_btn' id='tml_btn_4'>content 4</li>
</ul>
</div>
<div class='tml_bar'>
<div class='tml_el active_bullet' id='tml_el_1'>
<div class='year'>2000</div>
<div class='bullet'></div>
</div>
<div class='tml_el' id='tml_el_2'>
<div class='year'>2006</div>
<div class='bullet'></div>
</div>
<div class='tml_el' id='tml_el_3'>
<div class='year'>2011</div>
<div class='bullet'></div>
</div>
<div class='tml_el' id='tml_el_4'>
<div class='year'>2016</div>
<div class='bullet'></div>
</div>
</div>
</div>
只是爲了確保我明白 - 你想,當上「2006」鼠標懸停 - 2006年和內容2將得到凸顯? – Dekel
當我將鼠標懸停在內容2上時,突出顯示內容2和2006,還顯示內容2項目符號的前一個元素,等等......以及向後移動突出顯示時。希望我有道理。 – Ionut