前几天有个需求,要在H5页面中添加背景音乐,本以为很easy,却也踩了一些坑,废话不多说,进入正题: 撸完代码测试的时候才发现在安卓手机上背景音乐可以正常播放,但在iphone里的微信和safari中不能播放! 查了很多资料,原来是微信的锅,微信的js api是建立在微信内置浏览器的私有对象WeixinJSBridge上,在微信中打开页面的话会初始化这个对象,当这个对象准备好的时候,会抛出WeixinJSBridgeReady这个事件,我们在这个事件的回调中可以播放音乐,直接上代码: *html…
描述:video 在iphone手机,微信端无法自动播放,ios系统下不能自动播放视频.而且如果没有autoplay属性,在微信端点击一次,弹不出视频,要一直触着两秒后才可以打开视频.如果点击播放的话,还会自动放大到全屏模式 网上的解决方案: 1. <script src="https://act.mcake.com/fangli/2018/wap/commonjs/jquery.min.js"></script> <script type="t…
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"…
iOS 微信 音频 视频自动播放 http://www.w3ctech.com/topic/1165…
这里主要解析 UIAlertView 的几个关键功能的实现: 随着设备屏幕的旋转而旋转: Alert弹出框,使用UIWindow来实现,就是说,不用依赖于当前显示在最前面的UIView. 实现源码参考: http://git.oschina.net/shede333/BMAlertHud 使用UIWindow 弹出一个Alert框,最好新建一个 UIWIndow, 把window.windowLevel = UIWindowLevelAlert,这样就能显示在最前面: 调用[window mak…
原因不明,反正在IOS系统12.2以上的普通的H5移动端网页的重力感应功能无反应 解决方法: 把链接改为HTTPS,经过测试,12.2系统以上的如果你的链接是HTTP的,重力感应在网页上是没调起的,改成HTTPS的就没有问题…
针对前一篇文章 唤醒微信内置地图 后来发现在IOS系统中运行 唤醒地图会无效的问题.因为在IOS上无法解析这俩个字符串的问题! 需要对经纬度 使用 “parseFloat()”进行转换 返回一个浮点数 才会被IOS识别调用. $(document).on('click','.openLocation',function(){ var lat_long = $(this).attr('code'); var s_lat_long = lat_long.split('-'); wx.openLoca…
再做H5页面的时候,发现audio在手机端和微信端添加了autoplay以后还是不可以自动播放,这是因为手机端为了节约流浪所设置的 通常解决方法是给一个交互事件,一定要是交互事件 标签:<audio loop src="/photo/aa.mp3" id="audio" autoplay preload="auto">该浏览器不支持audio属性</audio> 里面的属性我就不多做解释了,可以自己百度 解决方法: //-…
setTimeout(function(){ //一般情况下,这样就可以自动播放了,但是一些奇葩iPhone机不可以 document.getElementById('bgmedia').play(); //微信必须加入Weixin JSAPI的WeixinJSBridgeReady才能生效 document.addEventListener("WeixinJSBridgeReady", function () { document.getElementById('bgmedia')[…
给页面赋一个title是最平常不过的事情了,不过在IOS下动态给页面赋title可不是平常的事情. 看代码: function setIOStitle(title) { $body = $('body'); document.title = title; var $iframe = $('<iframe src="/assets/img/settitle.png"></iframe>').on('load', function() { setTimeout(fu…