您的位置:首页 > Web前端 > JQuery

jquery写的90度翻转

2015-11-19 19:59 781 查看
这个只是js部分,可以借鉴一下,用的是jquery,如果用心看的话是一定可以看的懂得~~~~

var box1,nx=180,rotXINT,xtop;
var PI = Math.PI;
function onBind(){
$('body').on('click','.box',function(){
var a = $(this).next().css('top');
if( a == '0px' ){
$(this).css('border-bottom','1px solid #D1D2D1');
$(this).css('box-shadow','0 4px 2px rgba(0, 0, 0, .05)');
$(this).next().css('border-top','1px solid #D1D2D1');
nx = 0;
}else{
$(this).css('border-bottom',0);
$(this).css('box-shadow','');
$(this).next().css('border-top',0);
nx = -90;
};
box1 = $(this).next();
clearInterval(rotXINT);
rotXINT=setInterval("startXRotate()",1);
});
};

function startXRotate(){
nx = nx + 1;
//旋转角度
var degx = "rotateX(" + nx + "deg)";
box1.css('transform',degx);
box1.css('webkitTransform',degx);
box1.css('OTransform',degx);
box1.css('MozTransform',degx);

//两种拼凑起来才是完整的
var angle = 2 * PI / 360 * nx;
xtop = Math.cos(angle) * 120 - 120;
var xtoppx = xtop + 'px';
box1.css('margin-top',xtoppx);

var xelse = 60 - Math.cos(angle) * 60;
var xelsepx = xelse + 'px';
box1.css('top',xelsepx);

if (nx==0 || nx>=90){
clearInterval(rotXINT);
};
};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: