轻量级的的视差引擎Parallax.js

20 篇文章 0 订阅

地址:https://github.com/wagerfield/parallax


使用步骤

只需创建一个列表,给每个项目要内移动您的视差场景一类层和数据深度属性指定场景内的深度的元素。深度0,将导致层保持静止,深度为1,将导致层移动至所计算的运动的总效应。值插图中0和1,会造成层移动相对于所提供的比例。

<ul id="scene">
  <li class="layer" data-depth="0.00"><img src="layer6.png"></li>
  <li class="layer" data-depth="0.20"><img src="layer5.png"></li>
  <li class="layer" data-depth="0.40"><img src="layer4.png"></li>
  <li class="layer" data-depth="0.60"><img src="layer3.png"></li>
  <li class="layer" data-depth="0.80"><img src="layer2.png"></li>
  <li class="layer" data-depth="1.00"><img src="layer1.png"></li>
</ul>

视差场景,请选择您的父DOM元素,并把它传递给视差的构造函数。

var scene = document.getElementById('scene');
var parallax = new Parallax(scene);

行为:数据属性的例子

<ul id="scene"
  data-calibrate-x="false"
  data-calibrate-y="true"
  data-invert-x="false"
  data-invert-y="true"
  data-limit-x="false"
  data-limit-y="10"
  data-scalar-x="2"
  data-scalar-y="8"
  data-friction-x="0.2"
  data-friction-y="0.8">
  <li class="layer" data-depth="0.00"><img src="graphics/layer6.png"></li>
  <li class="layer" data-depth="0.20"><img src="graphics/layer5.png"></li>
  <li class="layer" data-depth="0.40"><img src="graphics/layer4.png"></li>
  <li class="layer" data-depth="0.60"><img src="graphics/layer3.png"></li>
  <li class="layer" data-depth="0.80"><img src="graphics/layer2.png"></li>
  <li class="layer" data-depth="1.00"><img src="graphics/layer1.png"></li>
</ul>


行为:构造函数对象实例

var scene = document.getElementById('scene');
var parallax = new Parallax(scene, {
  calibrateX: false,
  calibrateY: true,
  invertX: false,
  invertY: true,
  limitX: false,
  limitY: 10,
  scalarX: 2,
  scalarY: 8,
  frictionX: 0.2,
  frictionY: 0.8
});

行为:API示例

var scene = document.getElementById('scene');
var parallax = new Parallax(scene);
parallax.enable();
parallax.disable();
parallax.calibrate(false, true);
parallax.invert(false, true);
parallax.limit(false, 10);
parallax.scalar(2, 8);
parallax.friction(0.2, 0.8);

jQuery

$('#scene').parallax();

jQuery的:传递选项

$('#scene').parallax({
  calibrateX: false,
  calibrateY: true,
  invertX: false,
  invertY: true,
  limitX: false,
  limitY: 10,
  scalarX: 2,
  scalarY: 8,
  frictionX: 0.2,
  frictionY: 0.8
});

jQuery API

var $scene = $('#scene').parallax();
$scene.parallax('enable');
$scene.parallax('disable');
$scene.parallax('calibrate', false, true);
$scene.parallax('invert', false, true);
$scene.parallax('limit', false, 10);
$scene.parallax('scalar', 2, 8);
$scene.parallax('friction', 0.2, 0.8);



行为描述
relativeInputtrue orfalseSpecifies whether or not to use the coordinate system of the element passed to the parallax constructorMouse input only.
clipRelativeInputtrue orfalseSpecifies whether or not to clip the mouse input to the bounds of the elementpassed to the parallax constructorMouse input only.
calibrate-xtrue orfalseSpecifies whether or not to cache & calculate the motion relative to the initial x axis value on initialisation.
calibrate-ytrue orfalseSpecifies whether or not to cache & calculate the motion relative to the initial y axis value on initialisation.
invert-xtrue orfalsetrue moves layers in opposition to the device motion, false slides them away.
invert-ytrue orfalsetrue moves layers in opposition to the device motion, false slides them away.
limit-xnumberorfalseA numeric value limits the total range of motion in xfalse allows layers to move with complete freedom.
limit-ynumberorfalseA numeric value limits the total range of motion in yfalse allows layers to move with complete freedom.
scalar-xnumberMultiplies the input motion by this value, increasing or decreasing the sensitivity of the layer motion.
scalar-ynumberMultiplies the input motion by this value, increasing or decreasing the sensitivity of the layer motion.
friction-xnumber0 - 1The amount of friction the layers experience. This essentially adds some easing to the layer motion.
friction-ynumber0 - 1The amount of friction the layers experience. This essentially adds some easing to the layer motion.
origin-xnumberThe x origin of the mouse input. Defaults to 0.5 (the center). 0 moves the origin to the left edge, 1 to the right edge. Mouse input only.
origin-ynumberThe y origin of the mouse input. Defaults to 0.5 (the center). 0 moves the origin to the top edge, 1 to the bottom edge. Mouse input only.
除了上述的行为,有两种方法enable()和disable(),该激活和分别停用视差实例。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值