这是一款基于ThreeJS的炫酷jQuery 3D旋转木马图片画廊特效插件。该旋转木马特效可以设置图片预加载,带有前后导航按钮,可以使用鼠标前后旋转,并可以设置3D透视的位置。

该旋转木马依赖于以下外部插件:

Three.js:https://github.com/mrdoob/three.js/

Stats.js:https://github.com/mrdoob/stats.js/

TweenMax:http://www.greensock.com/gsap-js/

PreloadJS:http://www.createjs.com/#!/PreloadJS

浏览器兼容

  • Firefox - 30.0.0 +
  • Chrome - 35.0.0 +
  • Explorer: 9 +
  • Ipad Safari: 7.0.0 +
  • Iphone Safari: 7.0.0 +
  • IOS Safari: 7.0.0 +
  • Android Chrome: 未测试
  • IOS Chrome: 未测试

使用方法

HTML结构

该旋转木马插件的HTML结构使用一个空的<div>即可。

<div class="box"></div>                
              

在调用插件之前要引入所有的外部依赖文件。然后可以使用下面的方法调用该旋转木马插件:

$(function(){
  $(".box").ig3js({
      manifest: [
          {src:"image1.jpg", id:"image1"},
          {src:"image2.jpg", id:"image2"},
          {src:"image3.jpg", id:"image3"},
          {src:"image4.jpg", id:"image4"},
          {src:"image5.jpg", id:"image5"},
          {src:"image6.jpg", id:"image6"},
          {src:"image7.jpg", id:"image7"}
        ],
        imagePath: 'images/'
    });
});                
              

配置参数

名称 类型 默认值 描述
manifest Array Null 图片路径列表
imagePath String Null 指定图片所在路径
dx Number 300 图片的水平间距
dz Number 300 图片的垂直间距
deltaRotation Number 45 没有被激活的图片的旋转角度
planeSize Number 500 激活面板的宽度
alphaBackground Boolean true 设置背景是否透明
antialias Boolean true 抗锯齿设置
progress
light Hex "#ff0000" 设置进度条亮光面的颜色
ambientLight Hex "#ffffff" 设置进度条环境光的颜色
position Array [0,100,0] 设置进度条的位置
stats Boolean false 设置是隐藏还是显示

事件

名称 触发时机
onImageLoadProgress 调用图片的线程
onImageLoadComplete 图片加载完成
onImageLoad 图片开始加载
onNavigateComplete 导航结束。参数:激活的面板,类型为对象

方法

名称 描述
.next() 旋转木马旋转到下一图片
.prev() 旋转木马旋转到上一图片
<object>.goTo(<index>); 旋转木马旋转到指定的图片。参数:index,类型:Number。图片列表中元素的序号,从0开始计数
.perspective.defaul(); 设置旋转木马的3D透视为默认透视。
.perspective.topRight() 设置旋转木马的3D透视点在右边。
.perspective.topLeft() 设置旋转木马的3D透视点在左边。