使用js触发css:hover事件

duk*_*vin 5 html javascript css

我有<div class="animate">和在css:

div.animate:hover{
//do stuff
}
Run Code Online (Sandbox Code Playgroud)

但是也想通过javascript调用它.

可能吗?

Mel*_*igy 6

正如用JS 触发 css 悬停中所述,这是不可能的(如果您希望它按照创建此答案时所描述的那样)。

但主要目标可以通过以下方式实现:

  1. 在 CSS 中设置一个类hover(或任何名称)以及选择器。:hover
  2. 调用.addClass("hover")触发CSS,.trigger("hover")或者.trigger("mouseenter")触发JS。
  3. 确保mouseleave处理程序。或第二个.hover()处理程序,清除hover类(如果存在)。


eva*_*hen 1

我建议您不要这样做,而是将一个类添加到另一个标签中。在 jQuery 中它将是:

 $(window).load(function() {
    $('.trigger-animate').hover(function(){
        $('.animate').addClass('hover');
    });
}
Run Code Online (Sandbox Code Playgroud)

我建议使用此方法,因为它可以处理 onMouseOver 和 onMouseOut (这样,如果您需要使用以下语法,您也可以在鼠标离开 $('.trigger-animate') 时删除该类:

.hover( handlerIn(eventObject), handlerOut(eventObject) )
 checking out the documentation
Run Code Online (Sandbox Code Playgroud)