`
becoder
  • 浏览: 5001 次
  • 性别: Icon_minigender_1
最近访客 更多访客>>
社区版块
存档分类
最新评论

利用JQuery的Hover解决FF下的mouseleave问题

阅读更多
工作心得,随笔记录,随时更新,欢迎指教

首先,问题的缘起,onmouseleave和onmouseout区别,onmouseleave会把div和div内部的元素当成一个整体,而onmouseout则不会,我们先看一个简单的例子

<div id="parentDiv">
    <div id="childDiv">
    </div>
</div>


在parentDiv上声明onMouseOut事件来实现某个处理时,会有一个很头疼的问题,就是当用户mouseover到ChildDiv时,同样也会触发parent的mouseout事件,在很多情况下,我们并不希望系统这样做,例如parentDiv是个弹出的menu div,当用户mouseOut出弹出框时希望能让弹出框隐藏掉,但是当你鼠标滑到弹出框中的某个DIV或者其他元素也让弹出框隐藏掉了

其次,mouseleave会把parentDiv和它的所有child当做一个统一的元素处理,也就是说你在parent里怎么划拉,也不会触发mouseleave.

但是,mouseleave是不能够被FireFox所支持的

最后,jquery的hover方法解决了这个问题,引一下文档中的hover介绍

引用
Simulates hovering (moving the mouse on, and off, an object). This is a custom method which provides an 'in' to a frequent task.
Whenever the mouse cursor is moved over a matched element, the first specified function is fired. Whenever the mouse moves off of the element, the second specified function fires. Additionally, checks are in place to see if the mouse is still within the specified element itself (for example, an image inside of a div), and if it is, it will continue to 'hover', and not move out (a common error in using a mouseout event handler).


调用方法如下

$("#parentDiv").hover(function(){},function (){$("#parentDiv").hide()});
分享到:
评论

相关推荐

    jQuery温柔的hover

    提供的URL链接指向李科锋的个人博客,该博客文章可能详细解释了这个“温柔的hover”效果的实现过程和技术细节,包括可能遇到的问题和解决方案。 通过以上介绍,我们可以理解这个教程主要关注如何使用jQuery和CSS3...

    jquery hover事件鼠标悬停九宫格图片高亮显示代码

    本教程将深入探讨如何利用jQuery的`hover`事件实现鼠标悬停时九宫格图片的高亮显示效果。这个效果可以增强用户对网页内容的互动体验,使用户更容易注意到并操作特定的图像元素。 首先,我们需要理解`hover`事件。在...

    jquery导航菜单制作红色商城导航下拉菜单样式代码

    例如,可以使用`event.stopPropagation()`防止子菜单的鼠标离开导致主菜单的`mouseleave`事件触发,以及利用CSS3的`transition`属性替代jQuery的动画,以提高性能。 通过以上步骤,我们便能构建一个红色商城风格的...

    jQuery css3边框动画制作鼠标悬停图片边框动画特效

    "jQuery css3边框动画制作鼠标悬停图片边框动画特效"是一个利用jQuery和CSS3技术实现的交互式设计,它允许用户在鼠标悬停在图片上时,图片的边框产生吸引人的动画效果。下面将详细介绍如何实现这一功能。 首先,...

    jQuery鼠标悬停渐变导航.zip

    在前端开发中,创建动态且吸引用户的交互效果是至关重要的,而"jQuery鼠标悬停渐变导航"就是一个实现此类效果的实例。这个压缩包文件包含了使用CSS、HTML5、JavaScript和jQuery来创建一个导航菜单的方法,该菜单在...

    jquery+CSS3实现鼠标移动到DIV上高亮显示特效.zip

    本教程将详细讲解如何利用jQuery和CSS3来创建一个简单的鼠标悬停DIV元素时,该元素高亮显示的特效。这个特效在导航菜单、卡片式布局或其他需要突出显示元素的场景中尤为常见。 首先,我们从HTML结构开始。一个基本...

    jQuery背景滑动网站导航菜单.zip

    这个"jQuery背景滑动网站导航菜单"实例,展示了如何利用JavaScript和jQuery增强网站的用户体验,通过简单的代码实现动态效果,使导航菜单更吸引人。同时,这也是一种优化网站互动性的有效方式,提高了用户的参与度。...

    jquery红色商城导航下拉菜单.zip

    本教程将详细讲解如何利用jQuery技术实现一款红色商城风格的导航下拉菜单,让您的网站更加美观且交互性更强。 一、jQuery基础 jQuery是一个高效的JavaScript库,它简化了JavaScript的DOM操作、事件处理以及动画...

    css3悬停图片内边框特效.zip

    在这段代码中,`.image-container`是包含图片的容器,`img.hover-border`则是指图片在悬停状态下应用的CSS类。 在CSS中,我们可以为`.hover-border`定义新的边框样式,比如增加边框宽度或改变边框颜色,以实现悬停...

    CSS3鼠标经过图标变色旋转特效.zip

    本项目"CSS3鼠标经过图标变色旋转特效.zip"显然是一个演示如何利用CSS3实现这种效果的示例代码。 首先,我们需要理解CSS3中的伪类选择器,这是实现图标变色的关键。`:hover`是CSS3中的一种伪类,当鼠标指针悬浮在...

    css3图片高亮突出显示.zip

    在更复杂的情况下,我们可能需要借助JavaScript(如jQuery)来实现动态效果。例如,如果要根据用户的点击事件来高亮图片,可以编写以下代码: ```javascript $("img").click(function() { $(this).addClass(...

    CSS3鼠标经过突出放大显示特效.zip

    例如,如果需要在鼠标离开元素后恢复原状,可以利用JavaScript的事件监听器实现。使用jQuery,代码可能如下: ```javascript $('.normal').on('mouseleave', function() { $(this).css('transform', 'scale(1)'); ...

    CSS3制作鼠标悬停动画菜单效果.zip

    $('#menu li').on('mouseleave', function() { $(this).addClass('leaving'); }).on('mouseenter', function() { $(this).removeClass('leaving'); }); $('.leaving').delay(300).queue(function(next) { $...

    CSS3鼠标经过开花动画特效.zip

    如果需要用到jQuery,可以监听`mouseenter`和`mouseleave`事件来控制动画的开始和结束,或者在动画完成后添加额外的交互效果。例如: ```javascript $(document).ready(function() { $('#flower').on('mouseenter'...

    淡入淡出导航条

    $(".sild").mouseleave(function(){ $(this).find(".i-list").hide(100); $(this).find("h3").removeClass("hover"); }); }); ``` ### 2. 关键代码分析 #### DOM选择器 在jQuery中,`.sild`选择器用于选取...

    css3多种边框按钮悬停特效

    2. 遮罩变色动画:利用`:hover`伪类,当鼠标悬停在按钮上时改变其样式,可以是背景颜色、边框颜色或者透明度。例如,我们可以添加一个渐变过渡效果: ```css .border-btn:hover { background-color: rgba(51, 51, ...

    js实现背景图片感应鼠标变化的方法

    在标题和描述中提到的方法,主要是利用`mouseover`和`mouseout`事件以及`click`事件来改变背景图片或颜色。以下是一个简单的例子,展示了如何通过JavaScript实现背景图片的动态变化: ```html &lt;!DOCTYPE html&gt; ....

Global site tag (gtag.js) - Google Analytics