You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在鼠标进入和离开div时分别执行对应函数?

解决jQuery hover事件不生效的问题

嘿,刚接触jQuery一个月遇到这种问题太正常啦!我来帮你排查下问题,顺便给你正确的实现方式~

首先,你的代码没生效大概率是两个常见原因:

  • 代码在DOM元素还没加载完成的时候就执行了,导致$("#test")找不到对应的div,自然绑定不上hover事件
  • 可能你没正确引入jQuery库(不过你提到用了.hover(),大概率是前者)

另外,.hover()方法其实可以接受两个函数参数,分别对应鼠标进入和离开的操作,刚好符合你的需求。

给你一个完整的可运行示例:

<!-- 给div加个样式,确保它可见,不然悬停了也没反应 -->
<div id="test" style="width: 200px; height: 200px; background-color: #eee;"></div>

<!-- 先引入jQuery库,必须在你的代码之前 -->
<script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
<script>
// 等待DOM加载完成后再执行代码,这一步非常关键!
$(document).ready(function() {
  $("#test").hover(
    // 第一个函数:鼠标悬停(进入)时执行
    function() {
      window.alert("鼠标悬停啦!");
    },
    // 第二个函数:鼠标离开时执行
    function() {
      window.alert("鼠标离开啦!");
    }
  );
});
</script>

关键要点解释:

  • 必须引入jQuery库:所有jQuery语法都依赖这个库,而且要放在你的自定义代码前面
  • $(document).ready():这是jQuery用来确保DOM完全加载的方法,只有等页面上的所有元素都渲染完成后,$("#test")才能找到目标div,事件绑定才会生效
  • hover的两个函数:第一个是mouseenter事件的处理逻辑,第二个是mouseleave的,完美对应你要的“悬停执行A,离开执行B”的需求

如果之前的代码没加$(document).ready(),加上之后应该就能正常工作啦!如果还是有问题,可以检查下浏览器控制台有没有报错,比如jQuery没加载成功之类的~

内容的提问来源于stack exchange,提问作者Recoding

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 04:02:10