html5 3d音乐相册模板,css3+3D相册

/*旋转分散*/

window.onload = function() {

var album = document.getElementById('album'),

aImg = document.querySelectorAll('img');

for (var i = 0; i < aImg.length; i++) {

// 图片旋转分散 36°

aImg[i].style.transform = 'rotateY(' + i * 360 / aImg.length + 'deg) translateZ(300px)';

aImg[i].style.transition = 'transform 1s ' + (aImg.length - i) * 0.1 + 's';

}

var lastX = 0, // 前一次的坐标X

lastY = 0,

nowX = 0, // 当前的坐标X

nowY = 0,

desX = 0,

desY = 0,

rotX = -30,

rotY = 0,

timer; // 时间间隔

document.onmousedown = function(e) {

var e = e || event;

lastX = e.clientX;

lastY = e.clientY;

this.onmousemove = function(e) {

var e = e || event;

nowX = e.clientX;

nowY = e.clientY;

desX = nowX - lastX;

desY = nowY - lastY;

// 更新album的旋转角度,拖拽越快-> des变化大 -> roY变化大 -> 旋转快

rotX -= desY * 0.1;

rotY += desX * 0.2;

album.style.transform = 'rotateX(' + rotX + 'deg) rotateY(' + rotY + 'deg)';

lastX = nowX;

lastY = nowY;

}

document.onmouseup = function() {

this.onmousemove = this.onmouseup = null;

timer = setInterval(function() {

desX *= 0.95;

desY *= 0.95;

rotX -= desY * 0.1;

rotY += desX * 0.2;

album.style.transform = 'rotateX(' + rotX + 'deg) rotateY(' + rotY + 'deg)';

if (Math.abs(desX) < 0.5 && Math.abs(desY) < 0.5) {

clearInterval(timer);

}

}, 13)

}

// 阻止默认行为

return false;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值