Connect_logo_6.png 退出
前端视频教程 小程序 众筹源码 python 商城源码 商城模板 响应式模板 中文模板 手机模板 企业源码

可拖拽旋转的炫酷jQuery 3D图片墙特效

作者/代码整理:  (转载请附加本文地址,带有“懒人原生”字样的谢绝转载) 发布日期:2018-06-06
一款可拖拽旋转的炫酷jQuery 3D图片墙特效,图片围绕起来形成一个圆形的图片墙,而且每张图片都带有发光与倒影效果,非常好看的图片展示特效。


js代码

<script src="js/jquery-1.11.0.min.js" type="text/javascript"></script>
<script type="text/javascript">
	$(function(){

var imgL=$(".pic img").size();
var deg=360/imgL;
var roY=0,roX=-10;
 var xN=0,yN=0;
 var play=null;

$(".pic img").each(function(i){
	$(this).css({
		<!--translateZ 定义2d旋转沿着z轴-->
		"transform":"rotateY("+i*deg+"deg) translateZ(300px)"	});
		<!--防止图片被拖拽-->
		$(this).attr('ondragstart','return false');
	});

	$(document).mousedown(function(ev){
	var x_=ev.clientX;
	var y_=ev.clientY;
	clearInterval(play);
		console.log('我按下了');
		$(this).bind('mousemove',function(ev){
			/*获取当前鼠标的坐标*/
			var x=ev.clientX;
			var y=ev.clientY;
			/*两次坐标之间的距离*/
			  xN=x-x_;
			  yN=y-y_;

			 roY+=xN*0.2;
			roX-=yN*0.1;
			console.log('移动');
			//$('body').append('<div style="width:5px;height:5px;position:absolute;top:'+y+'px;left:'+x+'px;background-color:red"></div>');

			$('.pic').css({
				 transform:'perspective(800px) rotateX('+roX+'deg) rotateY('+roY+'deg)'
			});
			/*之前的鼠标坐标*/
		 x_=ev.clientX;
		 y_=ev.clientY;

		});
	}).mouseup(function(){
		  $(this).unbind('mousemove');
		  var play=setInterval(function(){
		   
		   xN*=0.95;
		   yN*=0.95
		   if(Math.abs(xN)<1 && Math.abs(yN)<1){
			  clearInterval(play);
		   }
			roY+=xN*0.2;
			roX-=yN*0.1;
			$('.pic').css({
				 transform:'perspective(800px) rotateX('+roX+'deg) rotateY('+roY+'deg)'
			});

		  },30);

	});

});
</script>