Compreendendo a diferença entre eventos Mouseover e Mouseenter
Os eventos mouseover e mouseenter respondem ao movimento do cursor do mouse sobre um elemento. No entanto, há uma distinção sutil entre eles.
Mouseover
O evento mouseover é acionado sempre que o cursor do mouse entra ou se move dentro dos limites de um elemento, incluindo descendente elementos. Isso significa que se você mover o cursor do mouse sobre um elemento filho aninhado no elemento principal, o evento mouseover ainda será acionado para o elemento principal.
Mouseenter
Em contraste, o evento mouseenter é acionado somente quando o cursor do mouse entra pela primeira vez nos limites de um elemento, excluindo os elementos descendentes. Se você mover o cursor dentro do elemento ou sobre um elemento filho, o evento mouseenter não será acionado novamente.
Quando usar cada evento
A escolha entre usar mouseover e mouseenter dependem de seus requisitos específicos:
Exemplo
Considere o seguinte código:
$("div.overout") .mouseover(function() { // Event triggered for mouseover and within the nested element }) .mouseout(function() { // Event triggered when mouse leaves the main element }); $("div.enterleave") .mouseenter(function() { // Event triggered only when mouse enters the main element }) .mouseleave(function() { // Event triggered when mouse leaves the main element });
Neste exemplo, o evento mouseover será acionado toda vez que o cursor do mouse se mover dentro do elemento "div.overout" ou seu elemento aninhado. Por outro lado, o evento mouseenter será acionado somente quando o cursor entrar pela primeira vez no elemento "div.enterleave".
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3