<div id="div1">d1</div>
<div id="div2">d2</div>
<div id="div3">d3</div>
window.addEventListener('scroll', e => {
console.log(e.target);
})
window.addEventListener('click', e => {
console.log(e.target);
})
div {
width: 100%;
height: 150px;
margin: 12px;
background: green;
text-align: center;
line-height: 150px;
color: white;
font-size: 2rem;
}
在上面的代碼中,當我在游標懸停在 div 上時觸發滾動事件時,事件目標始終是 HTML 檔案。我想獲得目標元素,如點擊事件的目標。它用于實作僅當游標位于我為此目的創建的 div 上時觸發滾動影片的功能。
uj5u.com熱心網友回復:
您可以使用:hover選擇器獲取當前懸停的所有元素。如果您只對其中的幾個感興趣,那么您可以使用其他選擇器(如特定類)過濾掉此串列(其中還將包含<body>和<html>元素)。
window.addEventListener("scroll", e => {
document.querySelector(".hovered")?.classList.remove("hovered");
document.querySelector(".target:hover")?.classList.add("hovered");
})
div.target {
width: 100%;
height: 150px;
margin: 12px;
background: green;
text-align: center;
line-height: 150px;
color: white;
font-size: 2rem;
}
.target.hovered {
background: yellow
}
<div class="target" id="div1">d1</div>
<div class="target" id="div2">d2</div>
<div class="target" id="div3">d3</div>
uj5u.com熱心網友回復:
由于您的功能依賴于滑鼠懸停而不是任何其他設備,也許您可??以使用該wheel事件而不是scroll?
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/379998.html
標籤:javascript html 滚动
