h5地理位置获取与多媒体

在h5当中有现成的关于获取到地理位置的方法window.navigator.geolocation,在h5中当用户同意地理位置获取之后有几个方法是用来对地理位置进行处理的具体方法如下:

1.getCurrentPosition(s,e,p)  success 回调(必须) error回调  option 参数

使用chrome时需要进行翻墙才能获取到所需信息,如果获取数据成功了,

position下面的几个参数

latitude 纬度  longitude 经度  altitu 海拔   accurac 精确定位  altitudeAccuracy 海拔精确度  heading 方向 speed 速度

positionError对象

用户拒绝 code = 1  获取不到 code = 2 获取失败 code = 3

options

enableHighAccurary 是否获得高精度位置默认为false  timeout 单位是ms请求超过时间默认为inifite

maximumAge 单位ms,watchPosition方法则不断获取用户的地理位置信息,位置信息过期时间设置为0 表示无条件的获取新的地理位置信息

2.watchPosition

var id = gelocation.watchPosition(fn) 用于注册监听器,在设备的地理位置发生改变的时候自动被调用 参数与getCurrentPosition相同

clearWatch(id)使用clearWatch清除监听

3.devicemotion事件 监听加速度变化

window.addEventLister(‘deviceMotion’,function(event){

consolo.log(event)

})

accelerationIncludingGravity(包含了地心引力,在Z轴上加上重力加速度g) 重力加速度

acceleration 重力加速度(陀螺仪)

rotationRate(alpha,beta,gamma) 旋转速率  alpha表示设备沿z轴上的旋转角度,范围0~360 beta表示设备在x轴上的旋转角度,范围-180~180,描述设备向前

向后旋转     gamma  表示设备在y轴上的旋转角度,范围-90~90 描述设备左向右旋转

interval 获取时间间隔  以上属性均为只读属性

在下面有个关于h5的实际例子,这个例子只是简单的调用了window.navigator.getlocation下面的getCurrentPosition()方法,具体的代码实例如下:

在这个实例中只是简单的对获取地理位置时采用的方法进行了一个处理。

2.多媒体

h5中的多媒体主要包括audio和video,在这之前市场上很多的关于视频的处理都使用的flash动画来处理,现在慢慢的flash都正在逐渐被取代。关于多媒体中的属性具体如下:

audio音频 1.controls有控制面板出现能够直接控制播放  2.autoplay能够实现音频在刷新时自动播放

3.preload(none/metadata/auto) 规定是否在页面加载后载入视频  none 表示不需要加载数据

metadata 原数据 诸如加载时长,比特率,帧数率这样的原数据而不是媒体内容需要加载

auto 浏览器应该加载它认为适量的媒体内容

4.loop 是否循环播放音/视频

5.poster(video独有) 当视频不可以使用时,使用一张图片代替 poster = ‘./’ 否则就会是空白

通常都会将帧数率为0的第一张图片作为poster内容,防止视频内容没有被加载出来时有内容展示

多资源整合

 

在上面的这段代码中主要是通过直接在html结构上直接添加,我们也可以通过js动态的生成然后再来进行添加。在动态的创建过程中有两种方式来对其进行处理:

第一种创建方式:var audio = new Audio(‘./name.mp3’);

audio.controls = true;

audio.loop = true;

audio.autoplay = true;

audio.preload = “auto”;

document.body.appendChild(audio);

第二种创建方式:var audio = document.createElement(‘audio’);

audio.src = “./name.mp3”;

document.body.appendChild(audio);

//有两种方式可以代替1.audio.controls = true; 2.audio.controls = “controls”;
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)

最后

基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack、git、node学习的再好也无济于事,因为对方就不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

什么?你问面试题资料在哪里,这不是就在你眼前吗(滑稽

不会再给你展示的机会,千万不要因为基础错过了自己心怡的公司。前端的基础知识杂且多,并不是理解就ok了,有些是真的要去记。当然了我们是牛x的前端工程师,每天像背英语单词一样去背知识点就没必要了,只要平时工作中多注意总结,面试前端刷下题目就可以了。

什么?你问面试题资料在哪里,这不是就在你眼前吗(滑稽

资料领取方式:戳这里免费领取

  • 15
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值