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 相关文章推荐
不用ajax实现点击文字即可编辑的方法
Dec 16 Javascript
JavaScript实现快速排序(自已编写)
Dec 19 Javascript
JS更改select内option属性的方法
Oct 14 Javascript
DIV+CSS+jQ实现省市联动可扩展
Jun 22 Javascript
JavaScript中Form表单技术汇总(推荐)
Jun 26 Javascript
详解JavaScript数组过滤相同元素的5种方法
May 23 Javascript
Javascript实现跨域后台设置拦截的方法详解
Aug 04 Javascript
Vue动态修改网页标题的方法及遇到问题
Jun 09 Javascript
详解为element-ui的Select和Cascader添加弹层底部操作按钮
Feb 07 Javascript
JavaScript中的this妙用实例分析
May 09 Javascript
详谈Object.defineProperty 及实现数据双向绑定
Jul 18 Javascript
关于Javascript闭包与应用的详解
Apr 22 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
初品cakephp 入门基础
2012/02/16 PHP
php fsockopen解决办法 php实现多线程
2014/01/20 PHP
php生成随机颜色方法汇总
2014/12/03 PHP
PHP中通过trigger_error触发PHP错误示例
2015/06/23 PHP
Composer设置忽略版本匹配的方法
2016/04/27 PHP
Javascript常考语句107条收集
2010/03/09 Javascript
JavaScript.Encode手动解码技巧
2010/07/14 Javascript
克隆javascript对象的三个方法小结
2011/01/12 Javascript
通过JavaScript控制字体大小的代码
2011/10/04 Javascript
jQuery1.6 使用方法一
2011/11/23 Javascript
jquery实现表格奇数偶数行不同样式(有图为证及实现代码)
2013/01/23 Javascript
JS实现OCX控件的事件响应示例
2014/09/17 Javascript
使用CDN和AJAX加速WordPress中jQuery的加载
2015/12/05 Javascript
nodejs接入阿里大鱼短信验证码的方法
2017/07/10 NodeJs
js与jQuery实现的用户注册协议倒计时功能实例【三种方法】
2017/11/09 jQuery
vue使用ajax获取后台数据进行显示的示例
2018/08/09 Javascript
JavaScript ES6常用基础知识总结
2019/02/09 Javascript
[03:04]DOTA2超级联赛专访ZSMJ “莫名其妙”的逆袭
2013/05/23 DOTA
pandas 小数位数 精度的处理方法
2018/06/09 Python
Python中实现单例模式的n种方式和原理
2018/11/14 Python
Python实现Linux监控的方法
2019/05/16 Python
详解Python Qt的窗体开发的基本操作
2019/07/14 Python
利用python控制Autocad:pyautocad方式
2020/06/01 Python
纯CSS实现菜单、导航栏的3D翻转动画效果
2014/04/23 HTML / CSS
美特斯邦威官方商城:邦购网
2016/10/13 全球购物
Rentalcars.com中国:世界上最大的在线汽车租赁服务
2019/08/22 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
网络公司美工设计工作个人的自我评价
2013/11/03 职场文书
写给女生的道歉信
2014/01/14 职场文书
大学生家政服务项目创业计划书
2014/01/30 职场文书
推荐信格式范文
2014/05/09 职场文书
法制宣传标语
2014/06/23 职场文书
廉政教育的心得体会
2014/09/01 职场文书
同学聚会致辞集锦
2015/07/28 职场文书
庭外和解协议书
2016/03/23 职场文书
Mysql中 unique列插入重复值该怎么解决呢
2021/05/26 MySQL