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="https://www.jb51.net/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> <ul> <li>白鸽</li> <li>花鸽</li> <li>黑鸽</li> <li>灰鸽</li> <li>红鸽</li> <li>绛鸽</li> </ul> <ul> </ul> <div></div> </div> </body> </html>

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery常用插件及用法总结》、《jQuery常见经典特效汇总》、《jQuery form操作技巧汇总》、《jQuery操作json数据技巧汇总》、《jQuery扩展技巧总结》、《jQuery拖拽特效与技巧总结》、《jQuery表格(table)操作技巧汇总》、《jquery中Ajax用法总结》、《jQuery动画与特效用法总结》及《jquery选择器用法总结

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wzjxyw.html