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中常见选择器的使用方法,并备有较为详细的备注说明,需要的朋友可以参考下
    2015-05-05
  • 基于jQuery实现图片的前进与后退功能

    基于jQuery实现图片的前进与后退功能

    前进与后退在浏览网页的时候是比较常见的而且非常的实用,接下来为大家分享下使用jQuery实现图片的前进与后退,感兴趣的朋友可以参考下哈
    2013-04-04
  • jQuery+css实现图片滚动效果(附源码)

    jQuery+css实现图片滚动效果(附源码)

    图片滚动效果想必大家都已司空见惯了吧,接下来本文介绍下jQuery+CSS实现图片滚动,感兴趣的你可不要错过了哈,希望可以帮助到你
    2013-03-03
  • jQuery中val()方法用法实例

    jQuery中val()方法用法实例

    这篇文章主要介绍了jQuery中val()方法用法,以实例形式分析了val()方法的两种常见用法,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • 圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现

    圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现

    一年一度的圣诞节又到了,首先祝大家好运一串串,健康一年年,平安到永远!今天就教大家如何在博客中添加纷纷扬扬的下雪效果。今天,你那里下雪了吗
    2012-12-12
  • Jquery 基础学习笔记之文档处理

    Jquery 基础学习笔记之文档处理

    本节让我们继续Jquery知识的了解:文档处理。文档处理主要是对HTML元素进行一些增操作,删除操作,复制操作,替换操作。
    2009-05-05
  • jQuery简介_动力节点Java学院整理

    jQuery简介_动力节点Java学院整理

    目前jQuery有1.x和2.x两个主要版本,区别在于2.x移除了对古老的IE 6、7、8的支持,因此2.x的代码更精简。选择哪个版本主要取决于你是否想支持IE 6~8,下文给大分享jquery 简介的相关知识,感兴趣的朋友一起看看吧
    2017-07-07
  • jQuery实现穿梭框效果

    jQuery实现穿梭框效果

    这篇文章主要为大家详细介绍了jQuery实现穿梭框效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-01-01
  • 基于JQuery和DWR实现异步数据传递

    基于JQuery和DWR实现异步数据传递

    这篇文章主要介绍了基于JQuery和DWR实现异步数据传递,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • jquery easyui中treegrid用法的简单实例

    jquery easyui中treegrid用法的简单实例

    本篇文章主要是对jquery easyui中treegrid用法的简单实例进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助
    2014-02-02

最新评论