1 回答

TA貢獻1817條經驗 獲得超6個贊
很明顯,這是一個 Javascript 問題,這是一種創建可重用函數的方法。
function hover(element, enter, leave){
element.addEventListener('mouseenter', enter)
element.addEventListener('mouseleave', leave)
}
然后你可以像這樣傳遞你的元素和回調函數。
hover(document.querySelector('h1'), e => {
// On hover
e.target.classList.add("logo__container--hover")
}, e => {
// On exit hover
e.target.classList.remove("logo__container--hover")
})
您也可以通過修改懸停功能來減少代碼行數。
function hover(element, className){
element.addEventListener('mouseenter', e => element.classList.add(className))
element.addEventListener('mouseleave', e => element.classList.remove(className))
}
然后像這樣使用它。
hover(document.querySelector('h1'), "logo__container--hover")
您現在可以對多個元素可擴展地重用它。
這是我之前的回答:正如 JHeth 提到的,改用CSS 偽類。
h1{
/* Style when not hovering */
}
h1:hover{
/* Style when cursor is on element */
}
添加回答
舉報