当前位置:首页 > jquery

jquery鼠标移出

2026-03-16 20:49:01jquery

jQuery 鼠标移出事件处理

jQuery 提供了 .mouseout().mouseleave() 方法来处理鼠标移出事件。两者区别在于事件冒泡机制:

.mouseout()
当鼠标离开选定元素或其子元素时触发,支持事件冒泡(可能触发多次)。

.mouseleave()
仅当鼠标离开选定元素本身时触发,不监听子元素且不冒泡(推荐大多数场景)。

基础语法

// mouseout 示例
$("#target").mouseout(function() {
  console.log("鼠标移出元素或子元素");
});

// mouseleave 示例
$("#target").mouseleave(function() {
  console.log("鼠标完全离开元素");
});

动态元素绑定

对于动态生成的元素,需使用事件委托:

$(document).on("mouseleave", ".dynamic-element", function() {
  alert("动态元素触发移出");
});

结合 CSS 过渡效果

可通过添加/移除类实现视觉反馈:

$(".box").mouseleave(function() {
  $(this).removeClass("hover-effect");
});

对应 CSS:

.box { transition: all 0.3s; }
.hover-effect { background: #f0f0f0; }

事件对象使用

获取移出时的坐标信息:

jquery鼠标移出

$("#log").mouseleave(function(e) {
  console.log(`X: ${e.pageX}, Y: ${e.pageY}`);
});

注意事项

  • 移动端需额外处理 touchstart 事件
  • 高频触发场景建议使用防抖(debounce)优化性能
  • 可通过 event.relatedTarget 判断鼠标移动目标

标签: 鼠标移出
分享给朋友:

相关文章

vue 实现鼠标经过

vue 实现鼠标经过

实现鼠标经过效果的方法 在Vue中实现鼠标经过(hover)效果,可以通过多种方式实现,包括使用CSS、Vue指令或事件监听。以下是几种常见的方法: 使用CSS的:hover伪类 通过CSS的:ho…

jquery鼠标事件

jquery鼠标事件

jQuery鼠标事件概述 jQuery提供了一系列鼠标事件处理方法,用于响应用户的鼠标操作,如点击、悬停、移动等。这些事件通过简洁的语法绑定到DOM元素,实现交互功能。 常用鼠标事件方法 cl…

vue实现鼠标框选

vue实现鼠标框选

Vue 实现鼠标框选功能 基本思路 鼠标框选功能通常需要监听鼠标的按下、移动和释放事件,记录起始点和当前位置,动态计算选区范围并高亮显示。在Vue中可以通过指令或组件封装实现。 核心实现步骤 模板部…

vue实现滚动鼠标加载

vue实现滚动鼠标加载

vue实现滚动鼠标加载的实现方法 使用Intersection Observer API Intersection Observer API可以监听元素是否进入视口,适合实现滚动加载。在Vue中可以通…

vue实现移入移出效果

vue实现移入移出效果

Vue 实现移入移出效果 在 Vue 中实现移入移出效果可以通过 @mouseenter 和 @mouseleave 事件监听器结合数据绑定或 CSS 过渡完成。以下是几种常见实现方式: 使用事件与…

react实现鼠标弹框

react实现鼠标弹框

实现鼠标悬停弹框 在React中实现鼠标悬停弹框效果,可以通过状态管理和事件处理来实现。以下是几种常见方法: 使用useState和onMouseEnter/onMouseLeave事件 impo…