pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例

這篇文章主要介紹了基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近用ofo小黃車App的時(shí)候,發(fā)現(xiàn)以前下方掃一掃變成了一個(gè)眼睛動(dòng)的小黃人,覺(jué)得蠻有意思的,這里用HTML5仿一下效果。

ofo眼睛效果

基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例

效果分析

從效果中不難看出,是使用陀螺儀事件實(shí)現(xiàn)的。

這里先來(lái)看一下HTML5中陀螺儀事件的一些概念。

陀螺儀事件為deviceorientation,這里主要獲取事件中的alpha,beta,gamma

aplha

行動(dòng)裝置水平放置時(shí),繞 Z 軸旋轉(zhuǎn)的角度,數(shù)值為 0 度到 360 度。

基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例

beta

行動(dòng)裝置水平放置時(shí),繞 X 軸旋轉(zhuǎn)的角度,數(shù)值為 -180 度到 180 度。

基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例

gamma

行動(dòng)裝置水平放置時(shí),繞 Z 軸旋轉(zhuǎn)的角度,數(shù)值為 -90 度到 90 度。

基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例

這里,只需要用到beta和gamma。

將apk解壓,得到眼睛素材:

基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例

代碼實(shí)現(xiàn)

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
  <title>Document</title>
  <style>
    #box{
      position: relative;
      width: 300px;
      margin: 0 auto;
    }

    #face{
      background-image: url(images/face.png);
      background-size: cover;
      width: 300px;
      height: 300px;
      position: absolute;
    }

    #eyeLeft{
      background-image: url(images/eye.png);
      background-size: cover;
      width: 40px;
      height: 40px;
      position: absolute;
      top: 90px;
      left: 100px;
    }

    #eyeRight{
      background-image: url(images/eye.png);
      background-size: cover;
      width: 40px;
      height: 40px;
      position: absolute;
      top: 90px;
      left: 190px;
    }

    #glass{
      background-image: url(images/glass.png);
      background-size: cover;
      width: 300px;
      height: 300px;
      position: absolute;
    }
  </style>
</head>
<body>
  <div id="box">
    <div id="face"></div>
    <div id="eyeLeft"></div>
    <div id="eyeRight"></div>
    <div id="glass"></div>
    <div id="log"></div>
  </div>
<script>
'use strict';

/*
* author: 王樂(lè)平
* date:2017.7.17
*/

var eyeLeftPosition = {
  start: [70, 78],
  end: [100, 110]
};

var eyeRightPosition = {
  start: [150, 78],
  end: [190, 110]
};

var eyeLeftCenterPosition = {
  x: (eyeLeftPosition.end[0] - eyeLeftPosition.start[0]) / 2 + eyeLeftPosition.start[0],
  y: (eyeLeftPosition.end[1] - eyeLeftPosition.start[1]) / 2 + eyeLeftPosition.start[1]
};

var eyeRightCenterPosition = {
  x: (eyeRightPosition.end[0] - eyeRightPosition.start[0]) / 2 + eyeRightPosition.start[0],
  y: (eyeRightPosition.end[1] - eyeRightPosition.start[1]) / 2 + eyeRightPosition.start[1]
};

var r = 20;

var eyeLeft = document.querySelector('#eyeLeft');
var eyeRight = document.querySelector('#eyeRight');

if (window.DeviceOrientationEvent) {

  window.addEventListener('deviceorientation', function (event) {

    let {alpha, beta, gamma} = event;

    eyeLeft.style.left = eyeLeftCenterPosition.x + gamma / 90 * r + 'px';
    eyeRight.style.left = eyeRightCenterPosition.x + gamma / 90 * r + 'px';
    eyeLeft.style.top = eyeRight.style.top 
                      = eyeLeftCenterPosition.y + beta / 180 * r + 'px';

    eyeRight.style.transform = eyeLeft.style.transform 
                         = eyeRight.style.WebkitTransform 
                         = eyeLeft.style.WebkitTransform 
                         = 'rotate(' + beta + 'deg)';
  }, false);
} else {
  document.querySelector('body').innerHTML = '瀏覽器不支持DeviceOrientationEvent';
}
</script>
</body>
</html>

最終效果

 

基于HTML5陀螺儀實(shí)現(xiàn)ofo首頁(yè)眼睛移動(dòng)效果的示例

 

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持。

【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過(guò)測(cè)試外,其他素材未做測(cè)試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請(qǐng)勿用于商業(yè)用途。如損害你的權(quán)益請(qǐng)聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關(guān)文檔推薦

主站蜘蛛池模板: 盐水蒸发器,水洗盐设备,冷凝结晶切片机,转鼓切片机,絮凝剂加药系统-无锡瑞司恩机械有限公司 | 顶空进样器-吹扫捕集仪-热脱附仪-二次热解吸仪-北京华盛谱信仪器 | 上海噪音治理公司-专业隔音降噪公司-中广通环保 | 上海刑事律师|刑事辩护律师|专业刑事犯罪辩护律师免费咨询-[尤辰荣]金牌上海刑事律师团队 | 欧盟ce检测认证_reach检测报告_第三方检测中心-深圳市威腾检验技术有限公司 | 杭州荣奥家具有限公司-浙江办公家具,杭州办公家具厂 | 实木家具_实木家具定制_全屋定制_美式家具_圣蒂斯堡官网 | 壹车网 | 第一时间提供新车_资讯_报价_图片_排行! | 深圳装修_店面装修设计_餐厅设计_装修全包价格-尚泰装饰设计 | 常州企业采购平台_常州MRO采购公司_常州米孚机电设备有限公司 | NBA直播_NBA直播免费观看直播在线_NBA直播免费高清无插件在线观看-24直播网 | 120kv/2mA直流高压发生器-60kv/2mA-30kva/50kv工频耐压试验装置-旭明电工 | 宝元数控系统|对刀仪厂家|东莞机器人控制系统|东莞安川伺服-【鑫天驰智能科技】 | 外贸资讯网 - 洞悉全球贸易,把握市场先机 | 定做大型恒温循环水浴槽-工业用不锈钢恒温水箱-大容量低温恒温水槽-常州精达仪器 | 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 逗网红-抖音网红-快手网红-各大平台网红物品导航 | WTB5光栅尺-JIE WILL磁栅尺-B60数显表-常州中崴机电科技有限公司 | 国际线缆连接网 - 连接器_线缆线束加工行业门户网站 | 缓蚀除垢剂_循环水阻垢剂_反渗透锅炉阻垢剂_有机硫化物-郑州威大水处理材料有限公司 | 天一线缆邯郸有限公司_煤矿用电缆厂家_矿用光缆厂家_矿用控制电缆_矿用通信电缆-天一线缆邯郸有限公司 | 密度电子天平-内校-外校电子天平-沈阳龙腾电子有限公司 | 校服厂家,英伦校服定做工厂,园服生产定制厂商-东莞市艾咪天使校服 | 杜甫仪器官网|实验室平行反应器|升降水浴锅|台式低温循环泵 | 南京欧陆电气股份有限公司-风力发电机官网 | 黄石妇科医院_黄石东方女子医院_黄石东方妇产医院怎么样 | 冰晶石|碱性嫩黄闪蒸干燥机-有机垃圾烘干设备-草酸钙盘式干燥机-常州市宝康干燥 | 【直乐】河北石家庄脊柱侧弯医院_治疗椎间盘突出哪家医院好_骨科脊柱外科专业医院_治疗抽动症/关节病骨伤权威医院|排行-直乐矫形中医医院 | RV减速机-蜗轮蜗杆减速机-洗车机减速机-减速机厂家-艾思捷 | 1000帧高速摄像机|工业高速相机厂家|科天健光电技术 | 厂房出租_厂房出售_产业园区招商_工业地产&nbsp;-&nbsp;中工招商网 | 单机除尘器 骨架-脉冲除尘器设备生产厂家-润天环保设备 | 档案密集架,移动密集架,手摇式密集架,吉林档案密集架-厂家直销★价格公道★质量保证 | LED灯杆屏_LED广告机_户外LED广告机_智慧灯杆_智慧路灯-太龙智显科技(深圳)有限公司 | Dataforth隔离信号调理模块-信号放大模块-加速度振动传感器-北京康泰电子有限公司 | 礼堂椅厂家|佛山市艺典家具有限公司 | 无缝钢管-聊城无缝钢管-小口径无缝钢管-大口径无缝钢管 - 聊城宽达钢管有限公司 | 云南成考网_云南成人高考报名网 粤丰硕水性环氧地坪漆-防静电自流平厂家-环保地坪涂料代理 | 淬火设备-钎焊机-熔炼炉-中频炉-锻造炉-感应加热电源-退火机-热处理设备-优造节能 | 液压压力机,液压折弯机,液压剪板机,模锻液压机-鲁南新力机床有限公司 | 能量回馈_制动单元_电梯节能_能耗制动_深圳市合兴加能科技有限公司 |