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 相关文章推荐
innertext , insertadjacentelement , insertadjacenthtml , insertadjacenttext 等区别
Jun 29 Javascript
javascript Discuz代码中的msn聊天小功能
May 25 Javascript
使用jQuery轻松实现Ajax的实例代码
Aug 16 Javascript
Jquery 实现grid绑定模板
Jan 28 Javascript
Node.js中流(stream)的使用方法示例
Jul 16 Javascript
Node.JS更改Windows注册表Regedit的方法小结
Aug 18 Javascript
vue mint-ui学习笔记之picker的使用
Oct 11 Javascript
JQuery Ajax跨域调用和非跨域调用问题实例分析
Apr 16 jQuery
详解babel升级到7.X采坑总结
May 12 Javascript
ES6 Promise对象概念及用法实例详解
Oct 15 Javascript
jQuery实现弹出层效果
Dec 10 jQuery
vue组件添加事件@click.native操作
Oct 30 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
七款最流行的PHP本地服务器分享
2013/02/19 PHP
destoon调用企业会员公司形象图片的实现方法
2014/08/21 PHP
PHP SOCKET编程详解
2015/05/22 PHP
Yii框架Session与Cookie使用方法示例
2019/10/14 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
2021/03/09 PHP
window.open的功能全解析
2006/10/10 Javascript
jQuery中:button选择器用法实例
2015/01/04 Javascript
JavaScript中Textarea滚动条不能拖动的解决方法
2015/12/15 Javascript
一道JS前端闭包面试题解析
2015/12/25 Javascript
Validform+layer实现漂亮的表单验证特效
2016/01/17 Javascript
微信小程序遇到修改数据后页面不渲染的问题解决
2017/03/09 Javascript
angularJS模态框$modal实例代码
2017/05/27 Javascript
Node.js 的模块知识汇总
2017/08/16 Javascript
cropper js基于vue的图片裁剪上传功能的实现代码
2018/03/01 Javascript
Vue项目查看当前使用的elementUI版本的方法
2018/09/27 Javascript
微信小程序学习笔记之表单提交与PHP后台数据交互处理图文详解
2019/03/28 Javascript
Vue+Element实现动态生成新表单并添加验证功能
2019/05/23 Javascript
详解JavaScript 异步编程
2020/07/13 Javascript
vue实现div单选多选功能
2020/07/16 Javascript
Vue页面跳转传递参数及接收方式
2020/09/09 Javascript
[53:18]Spirit vs Liquid Supermajor小组赛A组 BO3 第三场 6.2
2018/06/03 DOTA
跨平台python异步回调机制实现和使用方法
2013/11/26 Python
Python缩进和冒号详解
2016/06/01 Python
Python中Threading用法详解
2017/12/27 Python
Python从零开始创建区块链
2018/03/06 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
2020/05/18 Python
python将数据插入数据库的代码分享
2020/08/16 Python
详解通过focusout事件解决IOS键盘收起时界面不归位的问题
2019/07/18 HTML / CSS
YOINS官网:时尚女装网上购物
2017/03/17 全球购物
中专毕业生自荐信
2013/11/16 职场文书
3.15国际消费者权益日主题活动活动总结
2014/03/16 职场文书
感恩之星事迹材料
2014/05/03 职场文书
电子信息工程专业自荐书
2014/06/24 职场文书
材料员岗位职责
2015/02/10 职场文书
市场营销计划书
2019/04/24 职场文书
JS代码编译器Monaco使用方法
2021/06/11 Javascript