js决定了为移动电话和PC端选择不同的执行事件的方法。
确定它是否是一部手机:
功能以移动(){
无功suseragent = navigator.useragent.tolowercase(),
bisipad = suseragent.match( / /我的iPad)= =iPad
bisiphoneos = suseragent.match( / /我的iPhone OS)= =iPhone操作系统
bismidp = suseragent.match( / /我MIDP)= =MIDP
bisuc7 = suseragent.match( /右:1.2.3.4 /我)= =RV:1.2.3.4
胃必治= suseragent.match( / /我UCWEB)= =UCWEB
bisandroid = suseragent.match( / Android /我)= =Android
bisce = suseragent.match( / /我的Windows CE)= =Windows CE
biswm = suseragent.match( / /我的Windows Mobile)= =Windows移动
biswebview = suseragent.match( / /我= WebView WebView);
返回(bisipad bisiphoneos bismidp bisuc7 | | | | | | | |胃必治| | bisandroid | | bisce | | biswm);
}
判断该事件的用法:
VaR touchstart touchmove touchend,;
touchstart =以移动()'touchstart:'mousedown;
touchmove =以移动()'touchmove:'mousemove;
touchend =以移动()'touchend:'mouseup;
三事件的相应处理:
Touchstart:功能(e){
VaR E = E | | window.event; / /事件来确定使用哪一个
StopDefault(E); / /不同浏览器,不同的浏览器,以防止违约事件的方法
如果((以移动)){ / /如果手机
VaR触摸= e.touches { 0 };
这touch.pagey Y1 =。
其他{ }
本。Y1 = e.pagey; / /如果没有手机
}
这Y2 = 0;
},
touchmove:功能(e){
VaR E = e window.event | |;
StopDefault(E);
如果(以移动()){
VaR触摸= e.touches { 0 };
这touch.pagey Y2 =;
其他{ }
这e.pagey Y2 =;
}
},
Touchend:功能(e){
VaR E = e window.event | |;
StopDefault(E);
如果(这Y2 = =。0){
返回;
}
无功diffy = this.y2-this.y1;
如果(diffy > 50){
This.doNext();
} else if(diffy < 50){
This.doPrev();
}
这Y1 = 0,
这Y2 = 0;
},
防止浏览器默认事件方法:
功能stopdefault(e){
VaR E = e window.event | |;
如果(e.preventDefault){
E.preventDefault();
其他{ }
e.returnvalue = false;
}
}
希望本文能对大家的javascript程序设计有所帮助。