3 回答

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個(gè)贊
請(qǐng)檢查mousemove活動(dòng)是否適合您。
let interval = null;
btn.addEventListener("mousemove", function(){
console.log("Hello");
});
btn.addEventListener('mouseenter', function(){
interval= setInterval(()=>console.log('Hello'), 100)
})
btn.addEventListener('mouseout', function(){
clearInterval(interval)
})
#btn{
width: 300px;
height: 60px;
border-radius: 8px;
}
<button id="btn">
hover me
</button>

TA貢獻(xiàn)1873條經(jīng)驗(yàn) 獲得超9個(gè)贊
您可以通過使用mouseoverand mouseout(和 a setInterval)來做到這一點(diǎn)?;旧希髽?biāo)進(jìn)入時(shí)開始一個(gè)間隔,退出時(shí)清除它。
let interval;
btn.addEventListener("mouseover", function(){
interval = setInterval(function() {
console.log("Hello");
}, 100);
});
btn.addEventListener("mouseout", function(){
clearInterval(interval);
});

TA貢獻(xiàn)1906條經(jīng)驗(yàn) 獲得超10個(gè)贊
您可以使用以下組合
標(biāo)志,可以在元素本身上,也可以作為單獨(dú)的變量
一個(gè) setInterval 函數(shù)
找出在任何給定時(shí)間懸停的元素。(這顯然是一個(gè)有點(diǎn)愚蠢的例子,因?yàn)槟悴荒芎芎玫貙⑹髽?biāo)懸停在一次相鄰的多個(gè)元素上。)
function addEventListeners(button) {
button.addEventListener("mouseover", () => button.dataset.hovered = "1");
button.addEventListener("mouseout", () => button.dataset.hovered = "0");
}
function reportHovers(elements) {
const hoveredIds = elements.filter(el => el.dataset.hovered === "1").map(el => el.id);
document.getElementById("out").value = `${Math.floor(new Date() / 1000)}\n${JSON.stringify(hoveredIds)}`;
}
var buttons = Array.from(document.querySelectorAll("button"));
buttons.forEach(button => addEventListeners(button));
setInterval(() => reportHovers(buttons), 100);
<button id="b1">Button 1</button>
<button id="b2">Button 2</button>
<button id="b3">Button 3</button>
<textarea id="out"></textarea>
添加回答
舉報(bào)