国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

基于HTML5實現(xiàn)類似微信手機(jī)搖一搖功能(計算搖動次數(shù))

2024-08-26 00:19:48
字體:
供稿:網(wǎng)友

1、  deviceOrientation:封裝了方向傳感器數(shù)據(jù)的事件,可以獲取手機(jī)靜止?fàn)顟B(tài)下的方向數(shù)據(jù),例如手機(jī)所處角度、方位、朝向等。

2、  deviceMotion:封裝了運動傳感器數(shù)據(jù)的事件,可以獲取手機(jī)運動狀態(tài)下的運動加速度等數(shù)據(jù)。

不多說直接上代碼:

JavaScript:

var jsonObject=null;        // 當(dāng)頁面加載完以后會執(zhí)行window.onload        window.onload = function() {            var times = -1; // 記錄搖動次數(shù)            var last_time = 0;            var borderSpeed = 800;  // 加速度變化臨界值            var x = y = z = last_x = last_y = last_z = 0;            if (window.DeviceMotionEvent) {                window.addEventListener('devicemotion',shake,false);            }            else            {                alert('您的設(shè)備不支持搖一搖哦');            }            // 每次手機(jī)移動的時候都會執(zhí)行下面shake函數(shù)的代碼            function shake(eventData)            {                var acceleration = eventData.accelerationIncludingGravity;                var curTime = new Date().getTime();                var diffTime  = curTime-last_time;                // 每隔100ms進(jìn)行判斷                if (diffTime>100) {                    x = acceleration.x;                    y = acceleration.y;                    z = acceleration.z;                    var speed = Math.abs(x + y + z - last_x - last_y - last_z) / diffTime * 10000;                    // 判斷手機(jī)確實發(fā)生了搖動而不是正常的移動                    if (speed>borderSpeed) {                        times++;                        document.getElementById("text").innerHTML=times+" times";                        // 用戶的微信昵稱和頭像連接發(fā)送一次即可,不需要每次都發(fā)送                        if (times==0)                        {                            document.forms["insertForm"].headimg.value =img ;                            document.forms["insertForm"].user.value = nickname;                        }                        document.forms["insertForm"].time.value = times;                    }                    last_time = curTime;                    last_x = x;                    last_y = y;                    last_z = z;                }            }        }

html:

<img src="hand.png"><br/><font size="16" color="red" id="text"></font>

總結(jié)

以上所述是小編給大家介紹的基于HTML5實現(xiàn)類似微信手機(jī)搖一搖功能(計算搖動次數(shù)),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對VeVb武林網(wǎng)網(wǎng)站的支持!


注:相關(guān)教程知識閱讀請移步到HTML教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 新晃| 温泉县| 招远市| 贵定县| 邹城市| 大兴区| 阳高县| 汤原县| 崇仁县| 贺兰县| 绥芬河市| 宝山区| 富锦市| 大庆市| 舒兰市| 定州市| 泽库县| 古交市| 荔波县| 盐城市| 台北县| 普宁市| 海城市| 平安县| 广饶县| 和平县| 承德市| 郁南县| 儋州市| 深水埗区| 固始县| 临潭县| 土默特右旗| 冀州市| 哈密市| 五华县| 湾仔区| 咸宁市| 社会| 阳新县| 碌曲县|