久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

HTML5中如何調用手機重力感應的接口

去年朋友圈爆發各種各樣的H5動畫效果,這些基于H5的頁面通過朋友圈迅速形成病毒式傳播效果,本文通過講解”搖簽“案例,幫我們細細分析了HTML5中如何調用手機重力感應的接口。

  剛剛過去的一年里基于微信的H5營銷可謂是十分火爆,通過轉發朋友圈帶來的病毒式傳播效果相信大家都不太陌生吧,剛好最近農歷新年將至,我就拿一個“搖簽”的小例子來談一談HTML5中如何調用手機重力感應的接口。

 

  演示代碼:搖一搖,萬福簽

 

  什么是重力感應

 

  說到重力感應有一個東西不得不提,那就是就是陀螺儀,陀螺儀就是內部有一個陀螺,陀螺儀一旦開始旋轉,由于輪子的角動量,陀螺儀有抗拒方向改變的特性,它的軸由于陀螺效應始終與初始方向平行,這樣就可以通過與初始方向的偏差計算出實際方向。

 

 

  手機中的方位軸

 

  在Web應用中調用手機陀螺儀接口

//搖一搖(使用DeviceOrientation事件, 本質是計算偏轉角)
//測試中發現有些設備不支持
if(window.DeviceOrientationEvent){
    $(window).on('deviceorientation', function(e) {
        if (isStarted) {
            return true;
        }
        if (!lastAcc) {
            lastAcc = e;
            return true;
        }
        var delA = Math.abs(e.alpha - lastAcc.alpha);
        var delB = Math.abs(e.beta - lastAcc.beta);
        var delG = Math.abs(e.gamma - lastAcc.gamma);
        if ( (delA > 15 && delB > 15) || (delA > 15 && delG > 15) || (delB > 15 || delG > 15)) {
            start();
        }
        lastAcc = e;
    });
//搖一搖(使用DeviceMotion事件, 推薦,應為可以計算加速度)
if(window.DeviceMotionEvent) {
    var speed = 25;
    var x, y, z, lastX, lastY, lastZ;
    x = y = z = lastX = lastY = lastZ = 0;

    window.addEventListener('devicemotion', function(event){
        var acceleration = event.accelerationIncludingGravity;
        x = acceleration.x;
        y = acceleration.y;
        if(Math.abs(x-lastX) > speed || Math.abs(y-lastY) > speed) {
            start();
        }
        lastX = x;
        lastY = y;
    }, false);
}

 

  搖一搖的代碼判斷邏輯

var isStarted = false;

// 開始搖簽
function start() {
    isStarted = true;
    $('.qiancover').hide();
    $('.decode').hide();
    $('.result').show();
    // setTimeout(showDecode, 3000);
}

// 顯示正在解簽
function showDecode() {
    $('.result').hide();
    $('.decode').show();
    setTimeout(jumpToDecode, 3000);
}

// 跳至簽文頁面
function jumpToDecode(){
    var urls = ["#", "#"];
    var jumpTo = urls[parseInt(Math.random() * urls.length)];
    window.location = jumpTo;
};

  示例代碼: https://github.com/lionrock/HTML5-Example/tree/master/wechat-divination

  參考文檔: DeviceOrientation Event Specification

 

   來源:http://xunli.xyz/2016/01/12/html5-device-shake/?utm_source=tuicool&utm_medium=referral

【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

由于實際運行環境是在瀏覽器中,因此性能還取決于JavaScript解釋器的效率,指定的FPS幀速在低性能解釋器中可能不會達到,所以這部分不是開發者能夠決定的,開發者能作的是盡可能通
本文將使用HTML5提供的VideoAPI做一個自定義的視頻播放器,需要用到HTML5提供的video標簽、以及HTML5提供的對JavascriptAPI的擴展。,HTML5中國,中國最大的HTML5中文門戶。
隨著 Hybrid 應用的豐富,HTML5 工程師們已經不滿足于把桌面端體驗簡單移植到移動端,他們覬覦移動原生應用人性化的操作體驗,特別是原生應用與生俱來的豐富的手勢系統。HTML5 沒有提
你想要在自己網站上分享一個產品,或者是一個作品集,又或者僅僅只是一個靈感。在你發布到網上之前,你想讓它看起來有吸引力,專業,或者至少得看起來像那么回事。那么你接下
H5廣告,包括H5廣告的設計流程,究竟有什么講究,和階段。為了能幫助更多的人了解H5廣告,我專門做了一個講義。同時,也讓我意外的收到了非常好反饋和認!這是對我的極大鼓勵!我的
本文主要內容有:框架與組件、構建生態、開發技巧與調試、html、css與重構、native/hybrid/桌面開發、前端/H5優化、全棧/全端開發、研究實驗、數據分析與監控、其它軟技能、前端技術網
主站蜘蛛池模板: 国产在线视频一区二区 | 成人精品一区二区户外勾搭野战 | xx性欧美肥妇精品久久久久久 | 国产成人精品一区二 | 麻豆一区 | 国产日韩欧美在线播放 | 人成在线| 日韩精品一区二区三区中文在线 | 精品欧美一区二区精品久久久 | 97色在线观看免费视频 | 日韩中文字幕在线视频观看 | 亚洲人成网亚洲欧洲无码 | 91看片| 国产精品一区二区在线播放 | 国产精品一区在线观看 | 国产精品永久免费视频 | 一区二区三区免费 | 国产精品久久久久久久久久久久久 | 国产一区二区三区 | 中文字幕第十页 | 欧美一级久久 | 欧美精品一区二区三区在线 | 国产一区二区三区四区hd | 国产日韩欧美激情 | 免费av观看| 日韩欧美国产精品一区 | 成人免费视频网站在线看 | 成人二区三区 | 国产精品a免费一区久久电影 | 精品九九| 四虎影视免费观看 | 美女一级毛片 | 91大神在线资源观看无广告 | 日韩在线播放第一页 | 国产成人精品免高潮在线观看 | 国产精品成av人在线视午夜片 | 中文字幕在线看 | 国产一区二区自拍 | 国产精品久久影院 | 色性av | 在线观看不卡av |