H5实现微信摇一摇功能
2017-03-23 10:40 晓九已存在 阅读(1003) 评论(0) 编辑 收藏 举报//摇一摇
<script type="text/javascript">
var num =1;
var SHAKE_THRESHOLD = 2000;
var last_update = 0;
var x = y = z = last_x = last_y = last_z = 0;
function init() {
if (window.DeviceMotionEvent) {
window.addEventListener(\'devicemotion\', deviceMotionHandler, false);
} else {
alert(\'not support mobile event\');
}
}
function clearWord(){
num=1;
}
function deviceMotionHandler(eventData) {
var acceleration = eventData.accelerationIncludingGravity;
var curTime = new Date().getTime();
var audio = document.getElementById(\'musicBox\');
var audio2 = document.getElementById(\'musicResult\');
if ((curTime - last_update) > 60) {
var diffTime = curTime - last_update;
var flag = false;
last_update = curTime;
x = acceleration.x;
y = acceleration.y;
z = acceleration.z;
var speed = Math.abs(x + y + z - last_x - last_y - last_z) / diffTime * 8000;
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/Android/i) == "android"){
if (speed > SHAKE_THRESHOLD) {
audio.play();
$("body").addClass("shake_now");
if(num==1){
num++;
setTimeout(\'clearWord()\', 5000);
$.ajax({
type:"POST",
url : "/index.php?g=Wap&m=Shakeprize&a=run&token={weimicms:$Shakeprize.token}",
dataType: "json",
data:{
token:"{weimicms:$Shakeprize.token}",
wecha_id:"{weimicms:$wecha_id}",
wxid:"{weimicms:$wecha_id}",
id:\'{weimicms:$Shakeprize.id}\',
},
success: function(data) {
if(data.ret==2){
audio.pause();
audio2.play();
$(".modal2").show();
//$(".infor").show();
//alert(data.msg);
}else if(data.ret==1){
alert(data.msg);
//alert(data.data.data.tips);
}else if(data.ret==0){
alert(data.data.data.tips);
}
},
error: function() {
alert(\'请求失败,您的网络环境可能不佳!\');
return;
},
})
}
}else{
$("body").removeClass("shake_now");
}
}else if(ua.match(/iPhone/i) == "iphone"){
if (speed > 3000) {
audio.play();
if(num==1){
num++;
setTimeout(\'clearWord()\', 5000);
$.ajax({
type:"POST",
url : "/index.php?g=Wap&m=Shakeprize&a=run&token={weimicms:$Shakeprize.token}",
dataType: "json",
data:{
token:"{weimicms:$Shakeprize.token}",
wecha_id:"{weimicms:$wecha_id}",
wxid:"{weimicms:$wecha_id}",
id:\'{weimicms:$Shakeprize.id}\',
},
success: function(data) {
if(data.ret==2){
audio.pause();
audio2.play();
$(".modal2").show();
//$(".infor").show();
//alert(data.msg);
}else if(data.ret==1){
alert(data.msg);
//alert(data.data.data.tips);
}else if(data.ret==0){
alert(data.data.data.tips);
}
},
error: function() {
alert(\'请求失败,您的网络环境可能不佳!\');
return;
},
})
}
}
}
}
}
</script>