jquery中使用slideDown和slideUp做二级菜单思路解决

原博文 http://caibaojian.com/sliderdown-slideup.html 只是为了自己学习

处理导航时会遇到鼠标迅速移上去,迅速移开,然后就会发现,下来菜单逐渐消失,最后移上去的时甚至是不显示了。

只要将里面的第一个stop()改为stop(true,true).第二个stop()去掉即可。或者在第二个里面加上stop(true,true),第一个去掉。

或者使用这样子的函数:把第一个stop()改为filter(‘:not(:animated)‘).同样的第二个也不需要添加stop().

这里面涉及到的其实就是一个动画的stop();函数

stop() 方法停止当前正在运行的动画。
$(selector).stop(stopAll,goToEnd)
stopAll 可选。规定是否停止被选元素的所有加入队列的动画。
goToEnd 可选。规定是否允许完成当前的动画。该参数只能在设置了 stopAll 参数时使用。

从上面的stop()可以看出,我们滑过的时候触发了slideDown();那么让他的高度自然完成当前动画,同时停止加进来的动画队列。

//ulObj.animate({height: ‘toggle‘, opacity: ‘toggle‘}, speed);

时间: 2024-08-01 00:54:12

jquery中使用slideDown和slideUp做二级菜单思路解决的相关文章

jquery中动态新增的元素节点无法触发事件解决办法

在使用jquery中动态新增的元素节点时会发现添加的事件是无法触发的,我们下面就为各位来详细的介绍此问题的解决办法. 比如做一个ajax读取留言列表的时候,每条留言后面有个回复按钮,class为“reply”,如果你用的是$(".reply").click(function(){ //do something... }),想必后面通过ajax加载进来的列表中的回复按钮,点击事件会失效. 其实最简单的方法就是直接在标签中写onclick="",但是这样写其实是有点lo

jquery 中使用slideDown(),怎么避免动画重复??

$(".list-box-item").hover(function(){ var $this = $(this); $this.find(".cur-hover").stop(true, false).slideDown(300);},function(){ var $this = $(this); $this.find(".cur-hover").stop(true, false).slideUp(300);});

jquery 中多个存在依赖关系的ajax调用解决办法

在使用ajax异步调用的时候,可能碰到同时调用多个ajax这种情况.而且多个ajax之间还存在依赖关系.这种情况怎么处理呢?   有两种办法: 一种是多个ajax嵌套调用,这时需要设置async为false,也就是便成同步的了,但是这种方法存在一个弊端,如果后台出现问题,一直忙,不能返回数据,浏览器将出现卡死的情况.   第二种方法是使用队列的方法.将ajax加入到队列中,然后依次调用即可. 这里举个例子. index.html<!DOCTYPE html> <html> <

jQuery中hover和blur使用代理delegate无效的解决方法

今天就遇到了这样的小问题: $(document).ready(function(){ $('.status_on').hover(function(){ $(this).html('点击禁用'); $(this).css('color','red'); },function(){ $(this).html('已激活'); $(this).css('color','green'); });}); 但是当需要触发hover的元素是js后来生成的时候,hover是无效的.于是第一反应是想到用dele

第十五篇 JS 移入移出事件 模拟一个二级菜单

JS 移入移出事件 模拟一个二级菜单 老师演示一个特别简单二级菜单,同学们除了学习JS,还要注意它的元素和CSS样式. 这节课介绍的是JS鼠标移入.移出事件:onmouseover是移入事件,onmouseout是移出事件.当然还有其他的事件效果,这里就先不说明了. 先直接上一段代码: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <

二级菜单优化功能

二级菜单的功能优化---渐入佳境 功能1:点击其中之一的一级菜单展示其二级菜单,同时其他一级菜单的二级菜单都处于闭合状态 思路:使用jsDOM操作进行实现 HTML示例代码 <div class="multi-menu"> {% for menu in menu_list %} <div class="item"> <div class="title"><i class="fa {{ menu.

前端编程提高之旅(十六)————jquery中的动画

    上一篇文章对jquery中的事件做了总结,这篇文章主要对jquery中的动画做一下总结归类.最近微信端分享中,有很多页面交互及动画做的非常受欢迎,非常符合移动端体验.看似花哨的动画从本质上都脱离不了编写动画的基本方法.乐帝将jquery动画部分内容,做了一个简单的归类.     如下图:     如上图所示,无论多复杂的动画,从实现上都采用这些最底层的动画方法.本篇将从动画方法和与动画状态有关的方法讲起.    一.动画方法    1.同时改变高.宽.不透明度方法    这里涉及show

jQuery中的事件和动画——《锋利的jQuery》(第2版)读书笔记2

第4章 jQuery中的事件和动画 jQuery中的事件 加载DOM $(document).ready(function(){   // 编写代码... }); 可以简写成: $(function(){   // 编写代码... }); $(document).ready()方法的执行时机是在网页中所有DOM结构绘制完毕后就执行,可能此时DOM元素关联的东西(比如图片)并没有加载完. $(document).ready()方法能同时编写多个,每次调用$(document).ready()方法都

锋利的jQuery第四章:jQuery中的事件和动画

第一部分 1, (1)$()是$(document)的简写,默认参数是document. $(function(){}是$(document).ready(function(){})的简写. 2, (1)事件绑定 bind(type [,data],fn); type是事件类型,有blur,focus,load,resize,scroll,unload,click,dbclick,mousedown,mouseup, mouseover,mousemove,mouseout,mouseenter