var?con?=?document.getElementById("con");
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),銅仁企業(yè)網(wǎng)站建設(shè),銅仁品牌網(wǎng)站建設(shè),網(wǎng)站定制,銅仁網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,銅仁網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿(mǎn)足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專(zhuān)業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶(hù)成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
(function(){
//?監(jiān)聽(tīng)運(yùn)動(dòng)傳感事件,查看是否支持硬件運(yùn)動(dòng)
if?(window.DeviceMotionEvent)?{
window.addEventListener('devicemotion',?deviceMotionHandler,?false);
}?else?{
alert("您的設(shè)備不支持硬件調(diào)用");
}
//?變量初始化
var?x?=?0,
y?=?0,
z?=?0,
lastX?=?0,
lastY?=?0,
lastZ?=?0,
curTime?=?0,
lastTime?=?0,
diffTime?=?0,
speed?=?0;
//?設(shè)置一個(gè)閥值
var?SHAKE_THRESHOLD?=?800;?//?設(shè)定搖晃的閾值為600?運(yùn)行相應(yīng)操作
/*
*?功能:測(cè)算三個(gè)方向重力加速度,達(dá)到一定值進(jìn)行相應(yīng)操作
*?作者:HTML5學(xué)堂、劉國(guó)利、陳能堡
*
*/
function?deviceMotionHandler(eventData){
var?acceleration?=?eventData.accelerationIncludingGravity;
//?獲取當(dāng)前時(shí)間
curTime?=?new?Date().getTime();
//?計(jì)算時(shí)間差,當(dāng)這個(gè)差值大于一定值執(zhí)行計(jì)算三個(gè)方向的速度
if?((curTime?-?lastTime)??100)?{
//?記錄上一次的時(shí)間
diffTime?=?curTime?-?lastTime;
lastTime?=?curTime;
//?獲取當(dāng)前三個(gè)方向的值
x?=?acceleration.x;
y?=?acceleration.y;
z?=?acceleration.z;
//?計(jì)算速度,為了防止出現(xiàn)負(fù)數(shù),進(jìn)行絕對(duì)值
speed?=?Math.abs((x?+?y?+?z?-?lastX?-?lastY?-?lastZ)?/?diffTime?*?8000);
if?(speed??SHAKE_THRESHOLD)?{
alert("我實(shí)現(xiàn)搖一搖了");
};
//?記錄上一次三個(gè)方向的值
lastX?=?x;
lastY?=?y;
lastZ?=?z;????????????????????
};
}
})();
資料來(lái)源HTML5學(xué)堂。
重力感應(yīng)裝置是硬件接口,除非客戶(hù)端給你開(kāi)放了這樣的接口,不然你不可能實(shí)現(xiàn)的
其次,html5是一種實(shí)現(xiàn)移動(dòng)應(yīng)用的方式,隨著device API的豐富,給了h5各種可能性
那么,html5可以做什么?
大家討論的比較多的是html5和native的性能對(duì)比,開(kāi)發(fā)速度,維護(hù),升級(jí)等方面的問(wèn)題,但這些在我看來(lái)不是大問(wèn)題,隨著硬件的提升,相信html5的性能會(huì)越來(lái)越好。我比較看好的是device API在未來(lái)可以應(yīng)用的空間:
1. 利用重力感應(yīng)開(kāi)發(fā)物理游戲
2. 陀螺儀實(shí)現(xiàn)搖一搖
3. video和audio開(kāi)發(fā)語(yǔ)音識(shí)別和視頻通話(huà)、虛擬現(xiàn)實(shí)、增強(qiáng)現(xiàn)實(shí)
4. 濕度和溫度傳感器可以開(kāi)發(fā)智能家居
5. webnfc可以用來(lái)開(kāi)發(fā)近場(chǎng)通訊支付
6. 震動(dòng)API
7. 距離傳感器
8. 噪音檢測(cè)
1、點(diǎn)擊屏幕交互
點(diǎn)擊是最常用的手勢(shì),經(jīng)常用于頁(yè)面切換。點(diǎn)擊引導(dǎo)可以作為注釋?zhuān)脩?hù)可以理解H5內(nèi)容,使用戶(hù)能夠按照H5的節(jié)奏操作。例如,在《帶上希望的種子去北京》中,用戶(hù)可以點(diǎn)擊手勢(shì)“檢查”行李箱,詳細(xì)查看H5設(shè)計(jì)的內(nèi)容。
2、連續(xù)點(diǎn)擊交互
連擊交互在游戲類(lèi)中的應(yīng)用比較多。在游戲類(lèi)H5中,通常由連續(xù)點(diǎn)擊生成的數(shù)值關(guān)聯(lián)積分排名,具有競(jìng)技性質(zhì)的H5可以進(jìn)一步吸引用戶(hù)參與。例如,《漫威電影十周年》的“揍”滅霸小游戲,用戶(hù)繼續(xù)點(diǎn)擊屏幕,10秒內(nèi)的點(diǎn)擊次數(shù)就會(huì)計(jì)算出整個(gè)網(wǎng)絡(luò)排名。
3、長(zhǎng)按交互
長(zhǎng)按是用戶(hù)根據(jù)H5引導(dǎo)長(zhǎng)時(shí)間觸摸頁(yè)面。長(zhǎng)按交互用戶(hù)需要保持手指靜止?fàn)顟B(tài),并在設(shè)計(jì)時(shí)提示H5播放進(jìn)度參考,以避免乏味。例如,從騰訊公益的《敦煌未來(lái)博物館》設(shè)計(jì)的風(fēng)化過(guò)程來(lái)看,用戶(hù)點(diǎn)擊手機(jī)即可看到壁畫(huà)隨著年份推移逐漸風(fēng)化的場(chǎng)景,還可以喚醒用戶(hù)心中的文化保護(hù)意識(shí)。
4、滑動(dòng)交互
拖拽交互必須在長(zhǎng)按交互的基礎(chǔ)上滑動(dòng),從一個(gè)點(diǎn)拖動(dòng)到另一個(gè)點(diǎn)可以讓用戶(hù)自行控制速度。適合圖片展示類(lèi)的H5。例如,在《睡姿大比拼》中,用戶(hù)可以拖動(dòng)角色肢體來(lái)創(chuàng)建各種有趣的睡眠姿勢(shì)。
5、重力交互
重力交互是一個(gè)非常直觀的表達(dá)形式,用戶(hù)可以輕松get到H5獲得樂(lè)趣,這意味著手機(jī)硬件能升級(jí)給H5設(shè)計(jì)帶來(lái)了更多的可能性。利用重力感應(yīng)、陀螺儀、速度加速器等硬件,對(duì)H5的玩法進(jìn)行創(chuàng)新,提高用戶(hù)的代入感。例如,安裝在《一“陸”狂飆,極速挑戰(zhàn)》上的賽車(chē)游戲是通過(guò)手機(jī)重力傳感來(lái)調(diào)整小車(chē)的方向。
6、全景交互
全景交互在屏幕中以360度展現(xiàn)所有場(chǎng)景,用戶(hù)可以通過(guò)滑動(dòng)移動(dòng)場(chǎng)景。這種H5格式(如VR)需要關(guān)注整個(gè)場(chǎng)景的設(shè)計(jì),邊界連接要足夠順暢,全景加載內(nèi)容較大,一定要注意用戶(hù)等待和屏幕卡頓的問(wèn)題。例如,華為出品的《我的榮耀5G世界》中全景互動(dòng)展示了未來(lái)豐富多彩的5G世界。
以上幾種就是現(xiàn)目前比較常見(jiàn)的H5交互元素,如有幫助請(qǐng)采納~
不知道呢,聽(tīng)人說(shuō)可以對(duì)HTML5的全景播放器進(jìn)行代碼干預(yù),能讓蘋(píng)果設(shè)備上使用重力感應(yīng)(陀螺儀)控制瀏覽。