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像素单位删除才能计算。
以上所述就是本文的全部内容了,希望大家能够喜欢。
相关推荐
-
使用JS或jQuery模拟鼠标点击a标签事件代码
复制代码 代码如下: <a id="alink" href="abc.aspx" style="visibility: hidden;">下一步</a> $("#alink").click(); // 触发了a标签的点击事件,但是没有触发页面跳转 document.getElementById("alink").click(); //既触发了a标签的点击事件,又触发了页面跳转 把 &
-
jquery中交替点击事件的实现代码
复制代码 代码如下: $('#clickId').toggle( function(){$('#divId').hide();}, function(){$('#divId').show();} ); toggle方法中有两个参数,分别是要交替执行的事件.如果不传参默认是显示隐藏功能
-
jQuery实现鼠标滑过点击事件音效试听
废话不多说了,直接看效果图吧. 效果图如下: html代码: <div class="wrapper"> <h1 class="sub-section__title">eventType : </h1> <div class="center" style="margin-top: 40px;"> <div id="trigger-2-hover" cla
-
jQuery实现当按下回车键时绑定点击事件
当按下回车键时,绑定按钮点击事件代码如下,通过检测按下的键值,回车键keycode为13,判断是否是回车键,然后完成相应的方法. 复制代码 代码如下: <script> $(function(){ $(document).keydown(function(event){ if(event.keyCode==13){ $("#mouse").click(); } }); $("#mouse").click(function(){ alert("n
-
jQuery中ztree 点击文本框弹出下拉框的实例代码
废话不多说了,具体代码如下所示: <link rel="stylesheet" href="${ctx}/res/js/ztree/css/demo.css" type="text/css"/> <link rel="stylesheet" href="${ctx}/res/js/ztree/css/zTreeStyle/zTreeStyle.css" type="text/cs
-
jquery 触发a链接点击事件解决方案
jquery 触发a链接点击事件 复制代码 代码如下: <p class="btnSubmit"><a href="javascript:submitData();">确认</a></p> $(".btnSubmit a")[0].click(); <p id="tob"><a href="1.html">这是文字</a>&
-
jquery中交替点击事件toggle方法的使用示例
复制代码 代码如下: $('#clickId').toggle( function(){$('#divId').hide();}, function(){$('#divId').show();} ); toggle方法中有两个参数,分别是要交替执行的事件.如果不传参默认是显示隐藏功能
-
jQuery基于事件控制实现点击显示内容下拉效果
本文实例讲述了jQuery基于事件控制实现点击显示内容下拉效果.分享给大家供大家参考,具体如下: 1.实例代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml&
-
jquery实现点击其他区域时隐藏下拉div和遮罩层的方法
本文实例讲述了jquery实现点击其他区域时隐藏下拉div和遮罩层的方法.分享给大家供大家参考,具体如下: 为了更好的用户体验,在做下拉获取其他有弹出层的时候,当展开下拉时,要做到点击其他区域也能自动隐藏收起下拉和遮罩层,这样的效果用一段js就可以了. 以下图为例的一个下拉菜单为参考: 效果实现源码: $(document).bind('click', function(e) { var e = e || window.event; //浏览器兼容性 var elem = e.target ||
-
jQuery点击弹出下拉菜单的小例子
复制代码 代码如下: <title>导航--点击弹出内容</title> <style type="text/css">.navgation{margin:0;padding:0;list-style-type:none;position:relative;}.navgation li {float:left;}.navgation a{padding:3px 6px;background-color:orange;color:white;te
-
jQuery实现按钮只点击一次后就取消点击事件绑定的方法
本文实例讲述了jQuery实现按钮只点击一次后就取消点击事件绑定的方法.分享给大家供大家参考.具体实现方法如下: <input type="button" id="my-selector" value="只能点击一次" /> <script> $('#my-selector').bind('click', function() { $(this).unbind('click'); alert('Clicked and un
-
jquery mobile的触控点击事件会多次触发问题的解决方法
jquery mobile 对手势触控提供了如下几个事件监听: 复制代码 代码如下: tap 当用户点屏幕时触发taphold 当用户点屏幕且保持触摸超过1秒时触发swipe 当页面被垂直或者水平拖动时触发.这个事件有其相关联的属性,分别为scrollSupressionThreshold, durationThreshold, horizontalDistanceThreshold, and verticalDistanceThresholdswipeleft 当页面被拖动到左边方向时触发s
-
jquery实现点击label的同时触发文本框点击事件的方法
本文实例讲述了jquery实现点击label的同时触发文本框点击事件的方法.分享给大家供大家参考.具体实现方法如下: var labelID; $('label').click(function() { labelID = $(this).attr('for'); $('#'+labelID).trigger('click'); }); 希望本文所述对大家的jQuery程序设计有所帮助.
随机推荐
- Hadoop MultipleOutputs输出到多个文件中的实现方法
- Android微信自动抢红包插件优化和实现
- PowerShell中查找字符串位置的IndexOf函数使用实例
- Vue Spa切换页面时更改标题的实例代码
- MyBatis创建存储过程的实例代码_动力节点Java学院整理
- mysql查找删除重复数据并只保留一条实例详解
- CI框架源码解读之URI.php中_fetch_uri_string()函数用法分析
- 详解Hibernate cascade级联属性的CascadeType的用法
- Workbench通过远程访问mysql数据库的方法详解
- 浅谈javascript中的事件冒泡和事件捕获
- php header()函数使用说明
- CSS中div、span和center元素
- java解析sina视频
- 利用mysql事务特性实现并发安全的自增ID示例
- mysql自增ID起始值修改方法
- 防止文章被抄袭的网络分析软件
- asp.net的公共变量声明问题(解决)
- 改进性能和样式的24个ASP 技巧
- yii2 commands模式以及配置crontab定时任务的方法
- 浅谈jquery中ajax跨域提交的时候会有2次请求的问题