1.方向事件
< body onorientationchange = "rotateDisplay();" >
window.orientation可以判断设备的方向
ipad: 90 或 -90 横屏
ipad: 0 或180 竖屏
Andriod:0 或180 横屏
Andriod: 90 或 -90 竖屏
function orient(){
if (window.orientation == 90 || window.orientation == -90){
//ipad、iphone竖屏;Andriod横屏
$("body").attr("class", "landscape");
orientation = 'landscape';
return false;
}else if (window.orientation == 0 || window.orientation == 180){
//ipad、iphone横屏;Andriod竖屏
$("body").attr("class", "portrait");
orientation = 'portrait';
return false;
}
}
//页面加载时调用
$(function (){
orient();
});
//用户变化屏幕方向时调用
$(window).bind('orientationchange', function (e){
orient();
});
2.手势事件
gesturestart:当一个手指已经按在屏幕上,而另一个手指又触摸在屏幕时触发。
gesturechange:当触摸屏幕的任何一个手指的位置发生变化时触发。
gestureend:当任何一个手指从屏幕上面移开时触发。
【注意】只有两个手指都触摸到事件的接收容器时才触发这些手势事件。
3.触摸事件
该类事件会在用户手指放在屏幕上面时,在屏幕上滑动时,或从屏幕上移开时触发。具体来说有以下几个触摸事件。
touchstart:当手指放在屏幕上触发。
touchmove:当手指在屏幕上滑动时,连续地触发。
touchend:当手指从屏幕上离开时触发。
touchcancel:当系统停止跟踪时触发,系统什么时候取消,文档没有明确的说明。
【总】以上四个,是w3c提供的触摸事件,只针对触摸设备,最常用的是前三个。
由于触摸会导致屏幕动来动去,所以可以在这些事件的事件处理函数内使用event.preventDefault(),来阻止屏幕的默认滚动。