jQuery实现扑克正反面翻牌效果


Posted in Javascript onMarch 10, 2017

效果图:

jQuery实现扑克正反面翻牌效果

代码如下:

<!DOCTYPE>
<html>
 <head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <title>【JQuery插件】扑克正反面翻牌效果</title>
 <style>
 *{margin:0px;padding:0px;list-style:none;font-size: 16px;}
 </style>
 </head>
 <body>
 <style>
 .demo1 {margin:10px; width: 200px;height: 100px;text-align: center;position: relative;}
 .demo1 .front{width: 200px;height: 100px;position:absolute;left:0px;top:0px;background-color: #000;color: #fff;}
 .demo1 .behind{width: 200px;height: 0px;position:absolute;left:0px;top:50px;background-color: #ccc;color: #000;display: none;}
 </style>
 <h1>demo1 y轴 (css布局提示:背面默认隐藏 height为0 top是高度的一半也就是demo中间)</h1>
 <div class="demo1">
 <div class="front">正面正面正<br/>面正面正面<br/></div>
 <div class="behind">背面</div>
 </div>
 <div class="demo1">
 <div class="front">正面</div>
 <div class="behind">背面</div>
 </div>
 <style>
 .demo2 {margin:10px; width: 200px;height: 100px;text-align: center;position: relative;}
 .demo2 .front{width: 200px;z-index: 1; height: 100px;position:absolute;left:0px;top:0px;background-color: #000;color: #fff;}
 .demo2 .behind{width: 0;height: 100px;z-index: 0;position:absolute;left:100px;top:0;background-color: #ccc;color: #000;}
 </style>
 <h1>demo2 x轴(css布局提示:背面默认隐藏 width为0 left是宽度的一半也就是demo中间)</h1>
 <div class="demo2">
 <div class="front">正面</div>
 <div class="behind">背面</div>
 </div>
 <div class="demo2">
 <div class="front">正面</div>
 <div class="behind">背面</div>
 </div>
<script type="text/javascript" src="http://static.cnmo-img.com.cn/js/jquery144p.js"></script>
<script>
(function($) {
 /*
 ====================================================
 【JQuery插件】扑克翻牌效果
 @auther LiuMing
 @blog http://www.cnblogs.com/dtdxrk/
 ====================================================
 @front:正面元素
 @behind:背面元素
 @direction:方向
 @dis:距离
 @mouse: 'enter' 'leave' 判断鼠标移入移出
 @speed: 速度 不填默认速度80 建议不要超过100
 */
 var OverTurnAnimate = function(front, behind, direction, dis, mouse, speed){
 /*判断移入移出*/
 var $front = (mouse == 'enter') ? front : behind,
 $behind = (mouse == 'enter') ? behind : front;
 $front.stop();
 $behind.stop();
 if(direction == 'x'){
 $front.animate({left: dis/2,width: 0},speed, function() {
 $front.hide();
 $behind.show().animate({left: 0,width: dis},speed);
 });
 }else{
 $front.animate({top: dis/2,height: 0},speed, function() {
 $front.hide();
 $behind.show().animate({top: 0,height: dis},speed);
 });
 }
 };
 /*
 @demo
 $('.demo1').OverTurn(@direction, @speed);
 @direction(String)必选 'y' || 'x' 方向
 @speed(Number)可选 速度
 */
 $.fn.OverTurn = function(direction, speed) { 
  /*配置参数*/
  if(direction!='x' && direction!='y'){throw new Error('OverTurn arguments error');}
  $.each(this, function(){
  var $this = $(this),
  $front = $this.find('.front'),
  $behind = $this.find('.behind'),
  dis = (direction=='x') ? $this.width() :$this.height(),
  s = Number(speed) || 80;/*默认速度80 建议不要超过100*/
  $this.mouseenter(function() {
  OverTurnAnimate($front, $behind, direction, dis, 'enter', s);
 }).mouseleave(function() {
  OverTurnAnimate($front, $behind, direction, dis, 'leave', s);
 });
  });
 };
})(jQuery);
/*插件引用方法y*/
$('.demo1').OverTurn('y',100);/*speed不填默认速度80 建议不要超过100*/
/*插件引用方法x*/
$('.demo2').OverTurn('x');
</script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
firefox中JS读取XML文件
Dec 21 Javascript
可以把编码转换成 gb2312编码lib.UTF8toGB2312.js
Aug 21 Javascript
window.opener用法和用途实例介绍
Aug 19 Javascript
javascript dom追加内容实现示例
Sep 21 Javascript
jQuery 处理页面的事件详解
Jan 20 Javascript
JavaScript实现图片滑动切换的代码示例分享
Mar 06 Javascript
基于React.js实现原生js拖拽效果引发的思考
Mar 30 Javascript
jQuery模拟Marquee实现无缝滚动效果完整实例
Sep 29 Javascript
p5.js入门教程和基本形状绘制
Mar 15 Javascript
Vue事件修饰符native、self示例详解
Jul 09 Javascript
解决vue打包 npm run build-test突然不动了的问题
Nov 13 Javascript
JavaScript实现鼠标经过表格某行时此行变色
Nov 20 Javascript
AngularJS之页面跳转Route实例代码
Mar 10 #Javascript
Angular多选、全选、批量选择操作实例代码
Mar 10 #Javascript
jQuery插件HighCharts绘制2D带有Legend的饼图效果示例【附demo源码下载】
Mar 10 #Javascript
Vue.js之slot深度复制详解
Mar 10 #Javascript
JS实现的自动打字效果示例
Mar 10 #Javascript
jquery实现的table排序功能示例
Mar 10 #Javascript
微信小程序 向左滑动删除功能的实现
Mar 10 #Javascript
You might like
星际争霸兵种名称对照表
2020/03/04 星际争霸
PHP insert语法详解
2008/06/07 PHP
PHP访问数据库集群的方法小结
2016/03/14 PHP
深入分析PHP优化及注意事项
2016/07/04 PHP
javascript 计算两个整数的百分比值
2009/12/26 Javascript
jquery实现表格奇数偶数行不同样式(有图为证及实现代码)
2013/01/23 Javascript
JQuery实现用户名无刷新验证的小例子
2013/03/22 Javascript
javascript常见数字进制转换实例分析
2016/04/21 Javascript
javascript设计模式之模块模式学习笔记
2017/02/15 Javascript
Angular 4依赖注入学习教程之组件服务注入(二)
2017/06/04 Javascript
ExtJs的Ext.Ajax.request实现waitMsg等待提示效果
2017/06/14 Javascript
使用react-router4.0实现重定向和404功能的方法
2017/08/28 Javascript
Express系列之multer上传的使用
2017/10/27 Javascript
swiper插件自定义切换箭头按钮
2017/12/28 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
小程序实现搜索框
2020/06/19 Javascript
[52:00]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 LGD vs Optic
2018/04/02 DOTA
[42:32]VP vs RNG 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.21.mp4
2020/07/19 DOTA
[55:39]DOTA2-DPC中国联赛 正赛 VG vs LBZS BO3 第二场 1月19日
2021/03/11 DOTA
python操作MongoDB基础知识
2013/11/01 Python
Python程序设计入门(3)数组的使用
2014/06/16 Python
粗略分析Python中的内存泄漏
2015/04/23 Python
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
2017/08/21 Python
Python实现中一次读取多个值的方法
2018/04/22 Python
Python常用字符串替换函数strip、replace及sub用法示例
2018/05/21 Python
Python实现点阵字体读取与转换的方法
2019/01/29 Python
windows下安装Python虚拟环境virtualenvwrapper-win
2019/06/14 Python
详解PyQt5信号与槽的几种高级玩法
2020/03/24 Python
如何基于python实现不邻接植花
2020/05/01 Python
我的画教学反思
2014/04/28 职场文书
大学生应聘导游自荐信
2014/06/02 职场文书
水利局群众路线专题民主生活会发言材料
2014/09/21 职场文书
公司给客户的感谢信
2015/01/23 职场文书
工作时间证明
2015/06/15 职场文书
处罚决定书范文
2015/06/24 职场文书
标准版个人借条怎么写?以及什么是借条?
2019/08/28 职场文书