全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

jQuery实现可拖拽3D万花筒旋转特效

这是一个使用了CSS3立体效果的强大特效,本特效使用jQuery跟CSS3 transform来实现在用户鼠标按下拖动时,环形图片墙可以跟随鼠标进行3D旋转动画。

进去后可以上下左右的拖动图片。

本示例中使用到了CSS3的transform-style 属性,该规定如何在 3D 空间中呈现被嵌套的元素。

默认值: flat

继承性: no

版本: CSS3

JavaScript 语法: object.style.transformStyle="preserve-3d"

有2个属性值可选择:

flat 子元素将不保留其 3D 位置。

preserve-3d 子元素将保留其 3D 位置。

示例代码如下:

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery可拖拽3D万花筒旋转特效 - 何问起</title><base target="_blank" />
<style type="text/css">
 *{margin:0;padding: 0;}
 .hovertree{
 width: 120px;
 height: 180px;
 margin: 150px auto 0;
 position: relative;
 /*transform 旋转元素*/
 transform-style:preserve-3d;
 transform:perspective(800px) rotateX(-10deg) rotateY(0deg);
 }
 body{background-color: #66677c;}
 .hovertree img{
 position: absolute;
 width: 100%;
 height: 100%;
 border-radius: 5px;
 box-shadow: 0px 0px 10px #fff;
 /*倒影的设置*/
 -webkit-box-reflect:below 10px -webkit-linear-gradient(top,rgba(0,0,0,0) 50%,rgba(0,0,0,.5) 100%);
 }
 .hovertree p{
 width: 1200px;
 height: 1200px;
 background: -webkit-radial-gradient(center center,600px 600px,rgba(255,255,255,.5),rgba(0,0,0,0));
 position: absolute;
 top:100%;left:50%;
 margin-top: -600px;
 margin-left: -600px;
 border-radius:600px;
 transform:rotateX(90deg);
 }
 .hewenqi{position:absolute;z-index:99;}
 a{color:blue;}
</style>
</head>
<body>
<div class="hovertree">
 <img src="http://hovertree.com/texiao/css/14/hovertreepic/01.jpg"/>
 <img src="http://hovertree.com/texiao/css/14/hovertreepic/02.jpg" />
 <img src="http://cms.hovertree.com/hvtimg/201511/9rour12a.jpg"/>
 <img src="http://hovertree.com/texiao/css/14/hovertreepic/04.jpg"/>
 <img src="http://hovertree.com/texiao/css/14/hovertreepic/05.jpg"/>
 <img src="http://hovertree.com/texiao/css/14/hovertreepic/06.jpg"/>
 <img src="http://hovertree.com/texiao/css/14/hovertreepic/07.jpg"/>
 <img src="http://hovertree.com/texiao/css/14/hovertreepic/08.jpg"/>
 <img src="http://hovertree.com/hvtimg/201511/6j9j6tk5.png"/>
 <img src="http://cms.hovertree.com/hvtimg/201512/wfevf6yh.jpg"/>
 <p></p>
</div>
<script src="http://down.hovertree.com/jquery/jquery-1.11.0.min.js" type="text/javascript"></script>
<script type="text/javascript">
 $(function(){
var imgL=$(".hovertree img").size();
var deg=360/imgL;
var roY=0,roX=-10;
 var xN=0,yN=0;
 var play=null;
 $(".hovertree 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>');
  $('.hovertree').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;
  $('.hovertree').css({
   transform:'perspective(800px) rotateX('+roX+'deg) rotateY('+roY+'deg)'
  });
  },30);
 });
});
</script>
<div style="text-align:center;margin:250px 0; font:normal 14px/24px 'MicroSoft YaHei';">
 <p class="hewenqi">来源:<a href="http://hovertree.com/">何问起</a> <a href="http://hovertree.com/h/bjag/5x3kdw0k.htm">说明</a></p>
</div>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!


# jQuery  # 旋转特效  # 万花筒特效  # jQuery旋转木马式幻灯片轮播特效  # 基于jQuery实现自动轮播旋转木马特效  # jQuery平滑旋转幻灯片特效代码分享  # jquery实现的3D旋转木马特效代码分享  # jQuery实现的产品自动360度旋转展示特效源码分享  # jQuery右下角旋转环状菜单特效代码  # 基于jQuery插件实现环形图标菜单旋转切换特效  # 鼠标  # 拖动  # 按下  # 拖拽  # 两次  # 这是一个  # 上下左右  # 将不  # 来实现  # 可选择  # 默认值  # 使用了  # 如何在  # rotateX  # relative  # height  # perspective  # position  # auto  # text 


相关文章: 如何自定义建站之星网站的导航菜单样式?  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  网站设计制作企业有哪些,抖音官网主页怎么设置?  建站主机如何选?高性价比方案全解析  如何在腾讯云服务器快速搭建个人网站?  如何打造高效商业网站?建站目的决定转化率  如何做静态网页,sublimetext3.0制作静态网页?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  Python路径拼接规范_跨平台处理说明【指导】  小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?  ,如何利用word制作宣传手册?  如何快速搭建高效简练网站?  如何快速打造个性化非模板自助建站?  网站制作新手教程,新手建设一个网站需要注意些什么?  linux top下的 minerd 木马清除方法  ,巨量百应是干嘛的?  建站主机如何安装配置?新手必看操作指南  智能起名网站制作软件有哪些,制作logo的软件?  网站制作壁纸教程视频,电脑壁纸网站?  如何快速上传建站程序避免常见错误?  如何选择高效可靠的多用户建站源码资源?  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  php条件判断怎么写_ifelse和switchcase的使用区别【对比】  招商网站制作流程,网站招商广告语?  C#如何使用XPathNavigator高效查询XML  中山网站制作网页,中山新生登记系统登记流程?  广平建站公司哪家专业可靠?如何选择?  如何在建站之星绑定自定义域名?  ppt在线制作免费网站推荐,有什么下载免费的ppt模板网站?  建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析  香港服务器建站指南:免备案优势与SEO优化技巧全解析  代刷网站制作软件,别人代刷火车票靠谱吗?  如何高效利用亚马逊云主机搭建企业网站?  如何制作一个表白网站视频,关于勇敢表白的小标题?  制作表格网站有哪些,线上表格怎么弄?  如何挑选最适合建站的高性能VPS主机?  深圳网站制作培训,深圳哪些招聘网站比较好?  建设网站制作价格,怎样建立自己的公司网站?  中山网站推广排名,中山信息港登录入口?  小说建站VPS选用指南:性能对比、配置优化与建站方案解析  寿县云建站:智能SEO优化与多行业模板快速上线指南  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  如何通过多用户协作模板快速搭建高效企业网站?  C#怎么使用委托和事件 C# delegate与event编程方法  如何基于云服务器快速搭建个人网站?  创业网站制作流程,创业网站可靠吗?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何选择高效便捷的WAP商城建站系统?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  建站主机与服务器功能差异如何区分? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。