首页 > 解决方案 > 是否可以使用 JavaScript 悬停元素?

问题描述

我想使用 JavaScript 自动悬停在我的网页元素上,以便悬停效果可见。可能吗?

<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>

我想在没有用户交互的情况下悬停其中一个链接。

标签: javascripthtmlcsshover

解决方案


通过为悬停效果使用 CSS 类,您可以使用传统的 CSS:hover伪选择器来获得正常的悬停效果。但是您也可以手动添加另一个触发器类来应用相同的样式。

const links = Array.from( document.querySelectorAll( '.link-hover' ));
document.querySelector( '#toggle_hover' ).addEventListener( 'click', event => {
  links.forEach( link => link.classList.toggle( 'active' ));
});
.link-hover:hover,
.link-hover.active {
  color: blue;
  font-weight: bold;
  text-decoration: underline;
}
<a class="link-hover" href="#">Link 1</a>
<a class="link-hover" href="#">Link 2</a>
<a class="link-hover" href="#">Link 3</a>

<button id="toggle_hover">Toggle hover</button>


推荐阅读