在前端开发中用的较多的是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()的使用)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
# jquery
# hover
# 闪烁
# 详解jQuery停止动画——stop()方法的使用
# jQuery stop()用法实例详解
# 逐一介绍Jquery data()、Jquery stop()、jquery delay()函数(详
# jquery中animate的stop()方法作用实例分析
# 理解jQuery stop()方法
# JQuery动画animate的stop方法使用详解
# Jquery ajaxStart()与ajaxStop()方法(实例讲解)
# Jquery阻止事件冒泡 event.stopPropagation
# jq stop()和:is(:animated)的用法及区别(详解)
# 鼠标
# 移出
# 清空
# 设置成
# 给大家
# 当鼠标
# 可以使用
# 的是
# 都是
# 就会
# 第一个
# 上了
# 还会
# 中有
# 只需
# 设为
# 不是很
# 要在
# 希望能
# 第二个
相关文章:
活动邀请函制作网站有哪些,活动邀请函文案?
一键制作网站软件下载安装,一键自动采集网页文档制作步骤?
北京网站制作网页,网站升级改版需要多久?
网站制作话术技巧,网站推广做的好怎么话术?
无锡制作网站公司有哪些,无锡优八网络科技有限公司介绍?
公司网站建设制作费用,想建设一个属于自己的企业网站,该如何去做?
详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)
百度网页制作网站有哪些,谁能告诉我百度网站是怎么联系?
广州商城建站系统开发成本与周期如何控制?
招贴海报怎么做,什么是海报招贴?
宝塔建站教程:一键部署配置流程与SEO优化实战指南
如何通过商城免费建站系统源码自定义网站主题?
桂林网站制作公司有哪些,桂林马拉松怎么报名?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
高性能网站服务器配置指南:安全稳定与高效建站核心方案
定制建站模板如何实现SEO优化与智能系统配置?18字教程
如何在IIS服务器上快速部署高效网站?
如何快速搭建FTP站点实现文件共享?
定制建站流程步骤详解:一站式方案设计与开发指南
如何通过网站建站时间优化SEO与用户体验?
建站之星好吗?新手能否轻松上手建站?
建站之星IIS配置教程:代码生成技巧与站点搭建指南
网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?
建站之星CMS五站合一模板配置与SEO优化指南
建站与域名管理如何高效结合?
制作电商网页,电商供应链怎么做?
智能起名网站制作软件有哪些,制作logo的软件?
韩国服务器如何优化跨境访问实现高效连接?
建站OpenVZ教程与优化策略:配置指南与性能提升
交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?
山东云建站价格为何差异显著?
打鱼网站制作软件,波克捕鱼官方号怎么注册?
Python路径拼接规范_跨平台处理说明【指导】
教程网站设计制作软件,怎么创建自己的一个网站?
常州自助建站费用包含哪些项目?
网站制作软件有哪些,制图软件有哪些?
微信网站制作公司有哪些,民生银行办理公司开户怎么在微信网页上查询进度?
如何在Golang中处理模块冲突_解决依赖版本不兼容问题
建站主机与虚拟主机有何区别?如何选择最优方案?
c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】
如何快速生成高效建站系统源代码?
如何选择美橙互联多站合一建站方案?
如何选择高性价比服务器搭建个人网站?
广州网站设计制作一条龙,广州巨网网络科技有限公司是干什么的?
如何用低价快速搭建高质量网站?
网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?
建站之星官网登录失败?如何快速解决?
常州自助建站:操作简便模板丰富,企业个人快速搭建网站
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
*请认真填写需求信息,我们会在24小时内与您取得联系。