专题截图
专题特色:
1、首先一开始类似手机解锁的链接界面进入方式就挺新颖的,可能大家觉得手机解锁很常见,但是把这思路用到wab页面还是比较少见,也许技术实现不难,但是技术和创意结合在一起才是最重要的。其实他设置了三个点,当手指按顺序触摸到这三个点就解开了,而路径只是一个引导,并没有实际的用处。核心代码:
//解锁
var
showDotWin =
function
(callback){
var
dotUp = $(
'.up-dot'
);
var
dotLeft = $(
'.left-dot'
);
var
dotRight = $(
'.right-dot'
);
var
dotPosition = [];
var
dotList = [dotUp, dotRight, dotLeft];
var
dotClicked = [];
var
index = -1;
var
oldLine =
null
;
var
dotStartEvent =
function
(e){
e.preventDefault();
//把点的位置存到变量
var
tp;
for
(
var
i = 0; i < dotList.length; i++) {
tp = dotList[i];
dotPosition.push({
x: tp.offset().left,
y: tp.offset().top,
w: tp.width(),
h: tp.height()
});
};
//判断起点位置是否在第一个点
var
dotOne = dotPosition[0];
var
evt = e.touches[0];
if
(evt.clientX >= dotOne.x && evt.clientX = dotOne.y && evt.clientY = dotN.x && evt.clientX = dotN.y && evt.clientY <= dotN.h + dotN.y) {
dotList[index].addClass(
'active'
);
dotClicked.push(dotList[index]);
oldLine.addClass(
'show'
).removeClass(
'active'
);
oldLine = $(
'.line-box'
).filter(
'[data-class='
+ dotList[index].attr(
'data-class'
) +
']'
).addClass(
'active'
);
index++;
};
if
(index == dotList.length) {
oldLine.addClass(
'show'
).removeClass(
'active'
)
//滑动成功
$(
'.t-deblocking .txt-1'
).addClass(
'fadeInUp'
);
$(
'.t-deblocking .txt-3'
).addClass(
'fadeInDown'
);
$(document).off(
'touchstart'
, dotStartEvent);
callback && callback();
setTimeout(
function
(){
$(
'.t-deblocking'
).addClass(
'fadeOut'
);
setTimeout(
function
(){
$(
'.t-deblocking'
).remove();
setTimeout(
function
(){
$(
'.t-guide'
).hide();
}, 2000);
}, 2000)
}, 2000);
};
}
var
dotEndEvent =
function
(e){
if
(index != dotList.length) {
for
(
var
i = 0; i < dotClicked.length; i++) {
dotClicked[i].removeClass(
'active'
);
};
dotClicked = [];
index = -1;
oldLine =
null
;
$(
'.up-dot'
).addClass(
'shank'
);
$(
'.line-box'
).removeClass(
'active show'
);
$(
'.line-1'
).addClass(
'active'
);
};
$(document).off(
'touchmove'
, dotMoveEvent);
$(document).off(
'touchend'
, dotEndEvent);
}
$(document).on(
'touchstart'
, dotStartEvent);
}
|
2、陀螺仪效果
这个可以说是本专题的最大亮点。先来了解一下陀螺仪的定义:用高速回转体的动量矩敏感壳体相对惯性空间绕正交于自转轴的一个或二个轴的角运动检测装置。利用其他原理制成的角运动检测装置起同样功能的也称陀螺仪。
当然,这里并没有那么应用复杂,通过手机方位角度(可能我的表述不准确)来做动画,我简单描述一下效果:拿着手机全方位旋转都会有动画效果,或者你手拿手机,手不动,走路或者旋转都会触发动画效果。可以亲身体验一下,这个效果真的很酷!当然,这里也做了处理,可以通过触屏来旋转。上一张陀螺仪的效果图片:
具体的核心代码我就贴了,很长代码,可以直接去看页面源码。其中里面有个概念可以简单引入:
this
.vec3Acc =
new
Vector3();
//Vector3 三维向量
|
3、性能处理
用了安卓的机子体验了一下,三维的监控还是很流畅的,手机轻轻动一下都可以做出敏捷反应,完全没有卡,只是图片出现有点卡,也许在IOS下会效果更好点。里面还有个文字弹层,需要点击页面的某个点触发的。因为刚才说的,监控敏捷流畅,在手机上轻轻动一下,就飘动了,很难点的中那个按钮。
二维码
更多HTML5网站案例:http://www.w3cmark.com/html5/