jquery hover 不停闪动问题的解决方法(亦为stop()的使用)


Posted in Javascript onFebruary 10, 2017

在前端开发中用的较多的是jquery,之前遇到一个问题,一个下拉的jquery下拉菜单效果,hover上去,一直闪动,用mouseovermouseout好好的,当时没搞定,今天逛论坛看到一个方法,可以行.只怪自己之前看jquery api的时候不是很仔细。

解决闪动 可以使用Stop()

stop([clearQueue],[jumpToEnd])

概述

停止所有在指定元素上正在运行的动画。

如果队列中有等待执行的动画(并且clearQueue没有设为true),他们将被马上执行

参数

[clearQueue],[gotoEnd] Boolean,BooleanV1.2clearQueue:如果设置成true,则清空队列。可以立即结束动画。

gotoEnd: 让当前正在执行的动画立即完成,并且重设show和hide的原始样式,调用回调函数等。

[queue],[clearQueue],[jumpToEnd]BooleanV1.7queue:用来停止动画的队列名称

clearQueue: 如果设置成true,则清空队列。可以立即结束动画。

jumpToEnd: 如果设置成true,则完成队列。可以立即完成动画。

当鼠标移上去的时候就菜单下拉,当鼠标离开的时候菜单上卷,下拉和上卷的动画时间都是5秒种。

$("#menu").hover( 
    function () { 
      $("#menu").animate({ height: "500" }, 5000); 
    }, 
    function () { 
      $("#menu").animate({ height: "100" }, 5000); 
    } 
);

如果我快速不断地将鼠标移入移出菜单(即,当菜单下拉动画未完成时,鼠标又移出了菜单)就会产生“动画积累”,当鼠标停止移动后,积累的动画还会持续执行,直到动画序列执行完毕。这样导致动画效果与鼠标动作不一致。

要解决此问题只需要在移入移出动画之前加入stop(),结束当前动画进入下个动画即可。

代码如下:

$("#menu").hover( 
    function () { 
      $("#menu").stop().animate({ height: "500" }, 5000); 
    }, 
    function () { 
      $("#menu").stop().animate({ height: "100" }, 5000); 
    } 
);

如果需到组合动画,在移入移出动画之前加入stop()来停止当前动画,如下

$("#menu").hover( 
    function () { 
      $("#menu").stop().animate({ height: "500" }, 5000).animate({ width: "500px" }, 3000); 
    }, 
    function () { 
      $("#menu").stop().animate({ height: "100" }, 5000).animate({ width: "100px" },3000); 
    } 
);

效果并不好,因为stop()只是停止了当前第一步的动画(即{height:”500″}),然后又进入了第二步的动画(即[width:”500″})。

此时stop()的第一个参数就派上了用场,它会把下面没有执行的动画序列都清空掉。

$("#menu").hover( 
    function () { 
      $("#menu").stop(true).animate({ height: "500" }, 5000).animate({ width: "500px" }, 5000); 
    }, 
    function () { 
      $("#menu").stop(true).animate({ height: "100" }, 5000).animate({ width: "100px" },5000); 
    } 
);

当然也可以使用第二个参数,让动画达到最后状态。如:stop(false,true)

以上这篇jquery hover 不停闪动问题的解决方法(亦为stop()的使用)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
IE Firefox 使用自定义标签的区别
Oct 15 Javascript
jQuery实现的网页右下角tab样式在线客服效果代码
Oct 23 Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
Mar 07 Javascript
两种JavaScript的AES加密方式(可与Java相互加解密)
Aug 02 Javascript
AngularJS 中使用Swiper制作滚动图不能滑动的解决方法
Nov 15 Javascript
JS正则表达式修饰符global(/g)用法分析
Dec 27 Javascript
jquery uploadify如何取消已上传成功文件
Feb 08 Javascript
JS实现侧边栏鼠标经过弹出框+缓冲效果
Mar 29 Javascript
微信小程序开发教程之增加mixin扩展
Aug 09 Javascript
vue实现可视化可拖放的自定义表单的示例代码
Mar 20 Javascript
详解js中let与var声明变量的区别
Apr 05 Javascript
JavaScript中数组去重的5种方法
Jul 04 Javascript
JS验证不重复验证码
Feb 10 #Javascript
使用jquery给新生的th绑定hover事件的实例
Feb 10 #Javascript
详谈Ajax请求中的async:false/true的作用(ajax 在外部调用问题)
Feb 10 #Javascript
jQuery移除或禁用html元素点击事件常用方法小结
Feb 10 #Javascript
jQuery基于Ajax方式提交表单功能示例
Feb 10 #Javascript
Bootstrap轮播图学习使用
Feb 10 #Javascript
微信小程序模板之分页滑动栏
Feb 10 #Javascript
You might like
支持中文的PHP按字符串长度分割成数组代码
2015/05/17 PHP
PHP生成图片验证码功能示例
2017/01/12 PHP
js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色
2010/05/27 Javascript
用Javascript实现Sleep暂停功能代码
2010/09/03 Javascript
jquery 倒计时效果实现秒杀思路
2013/09/11 Javascript
jQuery中[attribute^=value]选择器用法实例
2014/12/31 Javascript
AngularJS语法详解
2015/01/23 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
通俗解释JavaScript正则表达式快速记忆
2017/08/23 Javascript
JavaScript动态绑定详解
2017/09/14 Javascript
bootstrap时间插件daterangepicker使用详解
2017/10/19 Javascript
在小程序中使用canvas的方法示例
2018/09/17 Javascript
nodejs读取本地中文json文件出现乱码解决方法
2018/10/10 NodeJs
Vue实战教程之仿肯德基宅急送App
2019/07/19 Javascript
解决ant Design中this.props.form.validateFields未执行的问题
2020/10/27 Javascript
[34:08]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS EG
2018/03/30 DOTA
Python备份Mysql脚本
2008/08/11 Python
python计算方程式根的方法
2015/05/07 Python
windows下搭建python scrapy爬虫框架步骤
2018/12/23 Python
python3在同一行内输入n个数并用列表保存的例子
2019/07/20 Python
python单向循环链表原理与实现方法示例
2019/12/03 Python
HTML5 语音搜索(淘宝店语音搜素)
2013/01/03 HTML / CSS
html5弹跳球示例代码
2013/07/23 HTML / CSS
HTML5 video标签(播放器)学习笔记(二):播放控制
2015/04/24 HTML / CSS
信用社实习人员自我鉴定
2013/09/20 职场文书
机电一体化专业应届本科生求职信
2013/09/27 职场文书
求职推荐信
2013/10/28 职场文书
教师个人的自我评价分享
2014/01/02 职场文书
老师对学生的评语
2014/04/18 职场文书
学校爱心捐款倡议书
2014/05/13 职场文书
美术课外活动总结
2014/07/08 职场文书
年终晚会活动方案
2014/08/21 职场文书
教师学期末个人总结
2015/02/13 职场文书
自主招生自荐信格式
2015/03/04 职场文书
2015年公司工作总结
2015/04/25 职场文书
小学教师教学反思
2016/02/24 职场文书