jQuery中animate动画第二次点击事件没反应

 更新时间:2015年05月07日 08:45:25   投稿:hebedich  
这篇文章主要介绍了jQuery中animate动画第二次点击事件没反应的解决方法,非常的实用,有需要的小伙伴可以参考下

用animate做点击翻页动画时发现第二次点击事件动画没反应,而第一次点击有动画效果,代码如下:

复制代码 代码如下:

$(".page").stop().animate({top:“-300px”}, 800, 'easeInOutExpo');

第二次点击事件动画没反应的原因:top是page元素顶部相与其父元素顶部的距离,第一次点击后,page元素顶部已经移动到距其父元素顶部-300px的位置,第二次点击时的并不是page在移动后的位置继续t移动-300px,而是当前的位置据其父元素顶部-300px。显然第一次已经移动到top:-300px的位置,第二次的top:-300px移动距离为0,所以没反应。
解决方法:

复制代码 代码如下:

$(".page").stop().animate({top:“-=300px”}, 800, 'easeInOutExpo');

top:“-=300px”,这样第二次点击时会在第一次点击后的位置上继续移动-300px。

如果动画移动的距离是变量,就不能用“-=变量名”来写了:

 
function down() {
var page_h=$(".page").height(); //687
var page_top=parseInt($(".page").css("top")); //0
var move=wrap_top+page_h;
$(".page").stop().animate({top:move}, 800, 'easeInOutExpo');
};

var page_h=$(".page").height();获取page的高度并赋值给page_h,得到的值是数值;
var page_top=parseInt($(".page").css("top"));获取当前page顶部到其父元素顶部的距离并赋值给page_top,(parseInt:去掉"PX");
var move=wrap_top+page_h;计算移动距离;

这样每次动画都会重新获取“当前page顶部到其父元素顶部的距离”。

注意:$(".page").height()的值是不带px单位的,$(".page").css("top"))的值是带px单位的,需要parseInt将单位px像素单位删除才能计算。

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

  • jQuery实现简单倒计时功能的方法

    jQuery实现简单倒计时功能的方法

    这篇文章主要介绍了jQuery实现简单倒计时功能的方法,涉及jQuery根据时间动态操作页面元素的相关技巧,需要的朋友可以参考下
    2016-07-07
  • 基于jQuery创建鼠标悬停效果的方法

    基于jQuery创建鼠标悬停效果的方法

    这篇文章主要介绍了基于jQuery创建鼠标悬停效果的方法,实例分析了jQuery实现鼠标特效的原理与详细步骤,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • jQuery插件 selectToSelect使用方法

    jQuery插件 selectToSelect使用方法

    最近做一个报表页面显示位置配置的界面,刚开始时用的是多个checkbox,选择其中需要的报表即可。后来随着业务变复杂,需要使用两个select,选择其中需要的到右边select,然后提交到数据库
    2013-10-10
  • js(jQuery)获取时间的方法及常用时间类搜集

    js(jQuery)获取时间的方法及常用时间类搜集

    获取时间的方法及常用时间类都是大家经常使用的,在本文为大家整理了一些,个人感觉还比较全,感兴趣的朋友可以收集下
    2013-10-10
  • 快速掌握jquery分页插件jqPaginator的使用方法

    快速掌握jquery分页插件jqPaginator的使用方法

    这篇文章主要帮助大家快速掌握jquery分页插件jqPaginator的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • JQueryMiniUI按照时间进行查询的实现方法

    JQueryMiniUI按照时间进行查询的实现方法

    下面小编就为大家带来一篇JQueryMiniUI按照时间进行查询的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • jQuery实现按钮只点击一次后就取消点击事件绑定的方法

    jQuery实现按钮只点击一次后就取消点击事件绑定的方法

    这篇文章主要介绍了jQuery实现按钮只点击一次后就取消点击事件绑定的方法,可实现点击按钮后取消onclick事件绑定的功能,需要的朋友可以参考下
    2015-06-06
  • jQuery插件简单学习实例教程

    jQuery插件简单学习实例教程

    这篇文章主要介绍了jQuery插件的简单用法,列举了分页插件、放大镜插件、自动完成插件、上传插件、日历插件等的简单使用方法,需要的朋友可以参考下
    2016-07-07
  • 纯CSS打造的导航菜单(附jquery版)

    纯CSS打造的导航菜单(附jquery版)

    使用CSS 制作导航菜单,实际主要是利用了css的li a属性,对于以后用css制作更绚丽的效果提高了很好的参考。
    2010-08-08
  • jquery实现楼层滚动特效

    jquery实现楼层滚动特效

    这篇文章主要为大家详细介绍了jquery实现楼层滚动特效,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-04-04

最新评论