奇怪的微信内置浏览器IOS版和Anroid 版
2019独角兽企业重金招聘Python工程师标准>>>
在html5 网页中模拟写了一个名叫alert 的函数,主要实现了一个提示框和点击提示框回调的功能,函数如下:
function alert(word, fn) {$("#coverbg").show();if (fn && typeof (fn) == "function") {var conStr = "<div id='conDiv' class='conDiv'>" + "<div id='tipcontent' class='concontentc'>" + word + "</div>" + "<div class='conbtn' style='width:100%;' onclick='hideCon(" + fn + ");'>确定</div>" + "</div>"} else {var conStr = "<div id='conDiv' class='conDiv'>" + "<div id='tipcontent' class='concontentc'>" + word + "</div>" + "<div class='conbtn' style='width:100%;' onclick='hideCon();'>确定</div>" + "</div>"}if ($("#conDiv").length > 0) {$("#conDiv").remove()}$("body").append($(conStr));var wordWidth = noneWidth(word);var divW = $("#conDiv").width();if (wordWidth / divW > 0.8) {wordWidth = divW * 0.8}$("#tipcontent").width(wordWidth);var winH = $(window).height() / 2 - 90;$("#conDiv").css("top", winH + "px")
}
在外部浏览器中和Android 手机微信中测试都可以正确回调函数fn,可是在IOS中就是不能正确回调函数。真是奇怪了!然后就开始一步步找问题,刚开始怀疑是
if (fn && typeof (fn) == "function")
条件不成立,然后弄了个日志显示,结果返回为undefined在微信内部浏览器中,然后又用了call,apply等方式都是undeined,实在无语,最后把fn 参数传递成字符串过去发现依然是undefined,真让人纳闷,后来一想有可能是alert被微信使用了吧,只能传递一个参数,就把函数重新命名成了showalert,经过测试居然可以了!
通过以上问题的解决,发现微信android 版本和IOS版本实现应该差别比较大!另外微信内置了alert函数优先级高!不知道分析的是否正确!
转载于:https://my.oschina.net/zhugenqiang/blog/659682
奇怪的微信内置浏览器IOS版和Anroid 版相关推荐
- 在微信内置浏览器 ios video再次点击事件没反应 video有些视频上下出现空白原因
问题一:video再次点击事件没有反应,Android正常 解决办法:在video 标签中加入 :webkit-playsinline playsinline <div class=" ...
- c 中html上传文件大小,IOS微信内置浏览器对html标签input type=file上传的文件大小size错误?...
完整代码: function _s(){ var f = document.getElementById("f").files; //上次修改时间 alert(f[0].lastM ...
- iOS 模拟微信内置浏览器CYWebViewController
iOS 模拟微信内置浏览器和Safari浏览器CYWebViewController 分为两种模式,一种是类似微信内置浏览器模式,一种是Safari浏览器模式.类似微信内置浏览器,顶部导航栏提供web ...
- PC版微信内置浏览器 缓存文件保存位置
PC版WX内置浏览器 缓存文件保存位置 C:\Users\username\AppData\Roaming\Tencent–000\WeChat\xweb\web\Code Cache PC版微信内置 ...
- 解决ios在微信内置浏览器中video播放的全屏问题
video 标签在部分的安卓微信和iOS的微信浏览器上点击播放会默认全屏展示 解决部分安卓默认全屏展示,给video标签加如下属性 x5-video-player-type="h5-page ...
- 实现base64格式的amr音频文件在IOS、android微信内置浏览器的播放
参考文档: 1.https://github.com/yxl/opencore-amr-js (将amr文件转为wav格式的编解码项目) 因为项目需要,要将amr的base46格式的音频文件在IO ...
- 安卓版微信内置浏览器,a href=tel:电话号码/a 这个链接失效,跳到拨号界面
转自:http://segmentfault.com/q/1010000000318831 安卓版微信内置浏览器,<a href="tel:电话号码"></a&g ...
- 微信内置浏览器下载APP(包括安卓apk和ios的ipa,pxl,deb)的解决方案
做过微信推广的朋友都知道,在微信内直接下载app是不可以的,这个是微信做了限制的原因.但是微信是目前用户活跃量较大的平台之一,App推广肯定离不开微信生态圈.那我们如何在微信内置浏览器内直接下载app ...
- ASP.NET MVC Display Mode 移动端视图 配置对微信内置浏览器的识别
最近在捣鼓一个稍微有点low的商城网站,没有计划做app却要求有个wap版,而前端又没有做成响应式,时间WTF,直接利用了asp.net mvc的Display Mode Provider. 使用方式 ...
最新文章
- 1.3 Quick Start中 Step 7: Use Kafka Connect to import/export data官网剖析(博主推荐)
- Python修行之字符串(一):连接、切割、大小写、排版
- linux版本之redhat9------终端中文软件zhcon0.2.6的安装及使用
- 使用Spring-data-jpa(1)(三十)
- Tomcat如何将项目发布到webapps目录下
- 分享18个常用的网站性能测试工具
- 拒修电脑后,妹子又约我学机器学习,好烦(甜)!
- Vue全家桶 - 电商后台管理系统项目开发实录(详)
- Glances:一款功能强大的操作系统安全监控平台
- Filter使用详解
- Linux namespace - Docker 背后的故事
- matlab的和操作
- 圣诞收到最搞笑的短信两则
- python模拟登陆豆瓣_模拟登陆豆瓣并爬取个人主页(爬虫项目三)
- 计算机一定要学五笔打字吗,学习五笔打字大概要多长时间
- 360 随身wifi安装服务器系统,win7系统无法安装360随身WiFi的解决方法
- 思科二层冗余技术对比---PortChannel/StackWise/VSS/vPC
- 计算机显示屏知识,计算机配置知识之显示屏
- 【判断是否为手机号】
- 雷军:把UCWEB做成像GOOGLE一样伟大
热门文章
- 俄美就《中导条约》磋商 普京:不希望进行军备竞赛
- mysql配置——库表操作、用户操作
- Android中文API(128) —— HandlerThread
- MySQL内核月报 2015.01-MySQL · 捉虫动态· replicate filter 和 GTID 一起使用的问题
- javascript的id、class、元素选择器
- Angularjs $http.post
- 基于HAProxy的网站架构
- HTTP协议头部与Keep-Alive模式详解-Content-Length Transfer-Encoding
- spring boot web 开发示例
- spark job生成的时间驱动