jQuery使用animate实现ul列表项相互飘动效果示例


Posted in Javascript onSeptember 16, 2016

本文实例分析了jQuery使用animate实现ul列表项相互飘动效果。分享给大家供大家参考,具体如下:

<!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">
<head>
  <title></title>
  <style type="text/css">
    body{font-size:12px;maring:0px;padding:0px;}
    #main{width:600px;margin:auto;background-color:gold;}
    ul{float:left;margin:30px;width:80px;height:140px;padding:2px;background-color:#0099cc}
    #ulRight{margin-left:300px;}
    li{list-style-type:none;margin-top:3px;background-color:Gray;}
  </style>
  <script src="../js/jquery-1.5.1.min.js" type="text/javascript"></script>
  <script type="text/javascript">
    $(function () {
      $("li[name='pigeon']").click(function () {
        //开始飘动的位置,由于ulRight的margin-left为300px所以要加300,同理leftUl也一样
        var rightUlLeft = parseInt($("#ulRight").position().left + 300) + "px";
        var leftUlLeft = parseInt($("#ulLeft").position().left + 30) + "px";
        if ($(this).parent().attr("id") == "ulLeft") {
          $(this).queue(function (next) {
            $(this).css({ "position": "absolute", "left": leftUlLeft });
            next();
          })
          .animate({ "left": rightUlLeft }, 2000)
          .queue(function () {
            $(this).appendTo("#ulRight").css({ "position": "static" });
            $(this).dequeue();
          });
        }
        else {
          $(this).queue(function (next) {
            $(this).css({ "position": "absolute", "left": rightUlLeft });
            next();
          })
          .animate({ "left": leftUlLeft }, 2000)
          .queue(function () {
            $(this).appendTo("#ulLeft").css({ "position": "static" });
            $(this).dequeue();
          });
        }
      });
    });
  </script>
</head>
<body>
  <div id="main">
    <ul id="ulLeft">
      <li name='pigeon'>白鸽</li>
      <li name='pigeon'>花鸽</li>
      <li name='pigeon'>黑鸽</li>
      <li name='pigeon'>灰鸽</li>
      <li name='pigeon'>红鸽</li>
      <li name='pigeon'>绛鸽</li>
    </ul>
    <ul id="ulRight">
    </ul>
    <div style="clear:both;"></div>
  </div>
</body>
</html>

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
javascript+dom树型菜单类,希望朋友们一起进步
May 03 Javascript
一个简单的js动画效果代码
Jul 20 Javascript
javascript实现可改变滚动方向的无缝滚动实例
Jun 17 Javascript
基于javascript代码检测访问网页的浏览器呈现引擎、平台、Windows操作系统、移动设备和游戏系统
Dec 03 Javascript
快速掌握Node.js事件驱动模型
Mar 21 Javascript
JavaScript中获取时间的函数集
Aug 16 Javascript
jQuery Ajax前后端使用JSON进行交互示例
Mar 17 Javascript
JavaScript错误处理和堆栈追踪详解
Apr 18 Javascript
浅谈Angular文字折叠展开组件的原理分析
Nov 24 Javascript
详解vue中的父子传值双向绑定及数据更新问题
Jun 13 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
Sep 13 Javascript
js实现秒表计时器
Dec 16 Javascript
jQuery中fadein与fadeout方法用法示例
Sep 16 #Javascript
jQuery中slidedown与slideup方法用法示例
Sep 16 #Javascript
jQuery中show与hide方法用法示例
Sep 16 #Javascript
Javascript中函数名.length属性用法分析(对比arguments.length)
Sep 16 #Javascript
Javascript函数中的arguments.callee用法实例分析
Sep 16 #Javascript
AngularJs 动态加载模块和依赖
Sep 15 #Javascript
Bootstrap 3的box-sizing样式导致UEditor控件的图片无法正常缩放的解决方案
Sep 15 #Javascript
You might like
如何在PHP中使用Oracle数据库(5)
2006/10/09 PHP
Yii中CGridView禁止列排序的设置方法
2016/07/12 PHP
浅谈php中的访问修饰符private、protected、public的作用范围
2016/11/20 PHP
php合并数组并保留键值的实现方法
2018/03/12 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
php微信公众号开发之翻页查询
2018/10/20 PHP
详解php伪造Referer请求反盗链资源
2019/01/24 PHP
使用EXT实现无刷新动态调用股票信息
2008/11/01 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
2015/03/04 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
关于获取DIV内部内容报错的原因分析及解决办法
2016/01/29 Javascript
TypeScript入门-接口
2017/03/30 Javascript
webstorm添加vue.js支持的方法教程
2017/07/05 Javascript
JS库中的Particles.js在vue上的运用案例分析
2017/09/13 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
[01:01:04]2018DOTA2亚洲邀请赛 4.5 淘汰赛 OpTic vs TNC 第一场
2018/04/06 DOTA
零基础写python爬虫之抓取百度贴吧代码分享
2014/11/06 Python
Python爬虫实现全国失信被执行人名单查询功能示例
2018/05/03 Python
django 通过url实现简单的权限控制的例子
2019/08/16 Python
妙用itchat! python实现久坐提醒功能
2019/11/25 Python
浅析rem和em和px vh vw和% 移动端长度单位
2016/04/28 HTML / CSS
美国在线肉类和海鲜配送:Crowd Cow
2020/10/02 全球购物
MySQL面试题
2014/01/12 面试题
设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
2014/12/30 面试题
寒假思想汇报
2014/01/10 职场文书
师范教师专业大学生职业生涯规划范文
2014/03/02 职场文书
摄影专业毕业生求职信
2014/03/13 职场文书
大学第二课堂活动总结
2014/07/08 职场文书
我的梦想演讲稿500字
2014/08/21 职场文书
2014年工会工作总结
2014/11/12 职场文书
小学少先队工作总结2015
2015/05/26 职场文书
2015年美容师个人工作总结
2015/10/14 职场文书
Nginx+Tomcat实现负载均衡、动静分离的原理解析
2021/03/31 Servers
浅谈redis缓存在项目中的使用
2021/05/20 Redis
Python初学者必备的文件读写指南
2021/06/23 Python
Java实现多文件上传功能
2021/06/30 Java/Android