我正在爲項目顯示在左側的項目組合的代碼工作。Javascript活動類僅適用於第一個列表項
活動類應該被添加到任何列表項的left div的類中,但是,當我將鼠標懸停在任何其他項目標題列表項上時,它只適用於第一個項目,我不知道這是爲什麼?下面是代碼:
HTML:
<ul class="project">
<li class=project-title>
<div class="line-left"></div>
<p class="project-paragraph">Project title</p>
</li>
<li class=project-title>
<div class="line-left"></div>
<p class="project-paragraph">Project title</p>
</li>
<li class=project-title>
<div class="line-left"></div>
<p class="project-paragraph">Project title</p>
</li>
<li class=project-title>
<div class="line-left"></div>
<p class="project-paragraph">Project title</p>
</li>
<li class=project-title>
<div class="line-left"></div>
<p class="project-paragraph">Project title</p>
</li>
<li class=project-title>
<div class="line-left"></div>
<p class="project-paragraph">
Project title</p>
</li>
</ul>
CSS:
.project {
width: 170px;
font-family: Verdana, Geneva, sans-serif;
font-size: 14px;
color: #949394;
}
.project-title {
list-style: none;
cursor: pointer;
}
.project-paragraph {
display: inline-block;
}
.line-left {
border-top: 1px solid #2b2b2b;
width: 20px;
margin-top: 7px;
visibility: hidden;
display: inline-block;
margin-right: 10px;
padding-bottom: 4px;
}
.active {
visibility: visible;
}
JAVASCRIPT:
document.querySelector('.project-title').addEventListener('mouseover', function() {
document.querySelector('.project-title .line-left').classList.add('active');
});
這裏是的jsfiddle還有:https://jsfiddle.net/andylyell/ynb7wxk2/
我會喜歡哈任何時候只剩下一個在線的活動課程,但我不確定如何執行此操作。任何幫助將不勝感激 - 謝謝!
''.querySelector()'函數只返回它找到的第一個匹配元素。您可能需要'.querySelectorAll()',儘管如果您只是通過事件委派進行操作,它會更簡單。 – Pointy