ios系统web(微信公众号)开发遇到的问题及解决方案
1.1. 页面滚动不流畅(2017-09-25)
现象:
网页竖向滚动或横向滚动不流畅。
解决方案:
为滚动元素添加css样式:
-webkit-overflow-scrolling: touch;
- 1
详见MDN-webkit-overflow-scrolling
1.2. 横向滚动时会上下跳动(2017-10-10)
现象:
横向滚动区域,滑动时,会上下跳动。
解决方案:
为滚动元素添加css样式:
overflow-x: scroll;
overflow-y: hidden;
-webkit-overflow-scrolling: touch;
- 1
- 2
- 3
2. 点击页面的时候网页闪烁(高亮)(2017-09-25)
现象:
点击页面输入框的时候,网页上半部分闪一下(高亮),体验不好。
解决方案:
-webkit-tap-highlight-color: rgba(0,0,0,0);
- 1
3. position:absolute元素在页面上看不到了(或absolute元素展示偏右)(2017-09-25)
现象:
某元素设置position:absolute,其他浏览器显示正常,ios和Safari浏览器却看不到该元素(或该元素在页面上比较偏右)。
解决方案:
设置left:xxx;即可。
4. ios下,iframe页面中的position:fixed定位错误(2017-09-19)
现象:
iOS,iframe中的fixed定位的元素并没有显示在屏幕的固定位置,而是会随着页面的滑动而滑动。
解决方案:
对滚动部分设置高度。
详见该文章:ios下,iframe页面中的position:fixed定位布局错误
5.1. ios下,click有300ms的延迟,click事件无响应(2017-09-25)
现象:
iframe中的网页,点击事件经常无响应。
解决方案:
使用fastclick插件。
5.2. fastclick插件对输入框(contenteditable)不友善,光标无法移动(2017-09-25)
现象:
使用fastclick后,点击某行文本,可以编辑,但是光标停留在输入框最前面,无法移动光标位置。
解决方案:
为编辑元素添加needsclick样式类。
5.3. 添加fastclick插件后,编辑屏幕下半部分的文本,网页没有自动向上移动(2017-09-25)
现象:
正常情况下,点击下半部分的输入框,在ios系统中,网页会自动向上滑动,使输入框暴露在屏幕的上访,方便编辑,但是添加fastclick插件之后,网页经常不再向上移动了。
解决方案: 暂未解决,求大神解答。
为编辑元素及所有后代元素添加needsclick类。(2017-10-10)
5.4. fastclick对编辑不友善(2017-09-25)
现象:
1. contenteditable的子元素仍有div标签的情况下,光标经常不能自由移动。
2. 点击contenteditable的元素,页面经常上下震动。
3. 点击编辑屏幕下半部分的文本时,页面不能自动向上移动。
解决方案: 部分页面不再使用fastclick,改为使用贺师俊大神的Zhi库。
但仍未解决第三点的问题。
为编辑元素及所有后代元素添加needsclick类。(2017-10-10)
6. ios输入汉字时出现空格(2017-09-11)
现象:
iOS在输入汉语时,输入多个汉字,在拼音的中间出现了空格。导致正则表达式判断输入不合法,用户输入被迫中止。
解决方案:
使用\s判断空格,认为空格是合法的。
详见该文章ios输入汉字时出现空格
7. iOS输入汉字时,最后选择汉字并没有触发keyup(keydown)事件(2017-10-13)
现象:
input输入框监听用户输入,iOS用户在输入结束后,点击候选汉字时,没有触发keyup(keydown)事件,导致最后的输入无法处理。
解决方案:
使用input事件处理。input事件可以处理点击候选汉字的操作。
input的简单介绍MDN-oninput
致谢
联系我
如果您有更好的解决方案,或者
您有任何疑问或本文侵犯了您的著作权,请联系我。 mail to kylin
ios系统web(微信公众号)开发遇到的问题及解决方案的更多相关文章
- 微信公众号开发系统入门教程(公众号注册、开发环境搭建、access_token管理、Demo实现、natapp外网穿透)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/a1786223749/article/ ...
- 微信公众号开发之被逼学web服务端1-----使用SecureCRT连接Linux服务器
做Android的进新公司后安排做微信公众号开发,这基本是后台和前端的活都要由小白的我来做,这两天基本成鸭子了,被填的满满的,却还是不够,博文仅作记录,希望能给后来的小白一点参考吧 今天做的是如何配置 ...
- 利用OpenShift托管Node.js Web服务进行微信公众号开发
最近写了一个微信的翻译机器人.用户只要关注该公众号,发送英文的消息,就能收到中文翻译的回复.有兴趣的读者可以扫描下面的二维码关注该公众号,尝试发送英文单词试试看.(有时候第一次发送单词会收到“该公众号 ...
- 带领技术小白入门——基于java的微信公众号开发(包括服务器配置、java web项目搭建、tomcat手动发布web项目、微信开发所需的url和token验证)
微信公众号对于每个人来说都不陌生,但是许多人都不清楚是怎么开发的.身为技术小白的我,在闲暇之余研究了一下基于java的微信公众号开发.下面就是我的实现步骤,写的略显粗糙,希望大家多多提议! 一.申请服 ...
- C#微信公众号开发系列教程三(消息体签名及加解密)
http://www.cnblogs.com/zskbll/p/4139039.html C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C ...
- 微信公众号开发系列教程一(调试环境部署续:vs远程调试)
http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...
- NET微信公众号开发-5.0微信支付(待测试)
开发前准备. 1.0微信支付官方开发者文档 2.0官方demo下载 我们用c#所以选择.net版本 不过这个官方的demo根本跑步起来 3.0官方demo运行起来解决方案 4.0微信支付官方.net版 ...
- .NET微信公众号开发-5.0微信支付
一.前言 在开始做这个功能之前,我们要做的第一件事情就是思考,如何做这个微信支付,从哪里开始,从哪里入手,官方的sdk说明什么的,有没有什么官方的demo,还有就是老板给我的一些资料齐全不,那些要申请 ...
- 微信公众号开发《三》微信JS-SDK之地理位置的获取,集成百度地图实现在线地图搜索
本次讲解微信开发第三篇:获取用户地址位置信息,是非常常用的功能,特别是服务行业公众号,尤为需要该功能,本次讲解的就是如何调用微信JS-SDK接口,获取用户位置信息,并结合百度地铁,实现在线地图搜索,与 ...
- 微信公众号开发C#系列-2、微信公众平台接入指南
概述 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流程是这样的,用户发送消息到微信服务器,微信服务器将接收到的消息post到用户接入时填写的url中,在url处理程序中,首先 ...
随机推荐
- 「NOIP2007」树网的核
传送门 Luogu 解题思路 这里着重介绍 \(O(n^3)\) 的做法,毕竟考场上只有 \(N\le300\) \(Q \omega Q\) 首先我们要知道,对任意一条直径算偏心距都是一样的. 证明 ...
- Wireshark安装失败或找不到网络接口问题
Wireshark安装失败或找不到网络接口问题 Wireshark捕获数据包,主要依赖Winpcap或Npcap组件.从Wireshark 3.0开始,Npcap代替了Winpcap组件,成为Wire ...
- 使用six库将Python2的项目完全转移到python3
SIX是用于python2与python3兼容的库. 它存在的目的是为了拥有无需修改即可在Python 2和Python 3上同时工作的代码.话虽这么说,但是这并不代表在Python 3中引用该库就可 ...
- $('#myModal').modal('show') //显示$('#myModal').modal('hide')隐藏
你这样试试,这是官方文档的写法 $('#myModal').modal('show') //显示$('#myModal').modal('hide')隐藏 //重复点击的隐藏显示有一个很更方便的写法$ ...
- C++面试常见问题——11重载、覆盖、隐藏
重载.覆盖.隐藏 重载 在同一类定义的成员函数中,参数不同的同名函数为重载关系.重载与虚函数无关. class A{ private: int x; public: void fun(int); // ...
- mongodb - 关联字段
1,博客表结构 Blog.js var mongoose = require('mongoose') mongoose.connect('mongodb://localhost/test',{ us ...
- Ubuntu下安装 Mysql
MYSQL在ubuntu16.04下的编译安装mysql-5.6.23.tar.gz 为减少安装过程中因权限带来个各种问题,建议全程用root用户编译安装,步骤如下: 1.安装依赖文件 apt-ge ...
- jsp获取web的跟路径
我实现了一个listener,此listener在tomcat启动的时候读取项目的配置文件,配置文件是xml.但是读取解析的功能是在另一个工具类实现的. 这个普通的工具类B,如何获取到当前web的跟路 ...
- Windows下 dmp文件的产生
一.windows下的崩溃捕获windows程序当遇到异常,没有try-catch或者try-catch也无法捕获到的异常时,程序就会自动退出.windows系统默认是不产生程序dmp文件的.dump ...
- JS:递归基础及范例——斐波那契数列 、 杨辉三角
定义:程序调用自身的编程技巧称为递归.一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就 ...