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

致谢

  1. fredshare-移动端前端常见bug及解决方案

联系我

如果您有更好的解决方案,或者 
您有任何疑问或本文侵犯了您的著作权,请联系我。 mail to kylin

版权声明:本文为博主原创文章,欢迎转载,转载请注明出处!<联系方式:kylin_zdd@163.com>

ios系统web(微信公众号)开发遇到的问题及解决方案的更多相关文章

  1. 微信公众号开发系统入门教程(公众号注册、开发环境搭建、access_token管理、Demo实现、natapp外网穿透)

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/a1786223749/article/ ...

  2. 微信公众号开发之被逼学web服务端1-----使用SecureCRT连接Linux服务器

    做Android的进新公司后安排做微信公众号开发,这基本是后台和前端的活都要由小白的我来做,这两天基本成鸭子了,被填的满满的,却还是不够,博文仅作记录,希望能给后来的小白一点参考吧 今天做的是如何配置 ...

  3. 利用OpenShift托管Node.js Web服务进行微信公众号开发

    最近写了一个微信的翻译机器人.用户只要关注该公众号,发送英文的消息,就能收到中文翻译的回复.有兴趣的读者可以扫描下面的二维码关注该公众号,尝试发送英文单词试试看.(有时候第一次发送单词会收到“该公众号 ...

  4. 带领技术小白入门——基于java的微信公众号开发(包括服务器配置、java web项目搭建、tomcat手动发布web项目、微信开发所需的url和token验证)

    微信公众号对于每个人来说都不陌生,但是许多人都不清楚是怎么开发的.身为技术小白的我,在闲暇之余研究了一下基于java的微信公众号开发.下面就是我的实现步骤,写的略显粗糙,希望大家多多提议! 一.申请服 ...

  5. C#微信公众号开发系列教程三(消息体签名及加解密)

    http://www.cnblogs.com/zskbll/p/4139039.html C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试) C ...

  6. 微信公众号开发系列教程一(调试环境部署续:vs远程调试)

    http://www.cnblogs.com/zskbll/p/4080328.html 目录 C#微信公众号开发系列教程一(调试环境部署) C#微信公众号开发系列教程一(调试环境部署续:vs远程调试 ...

  7. NET微信公众号开发-5.0微信支付(待测试)

    开发前准备. 1.0微信支付官方开发者文档 2.0官方demo下载 我们用c#所以选择.net版本 不过这个官方的demo根本跑步起来 3.0官方demo运行起来解决方案 4.0微信支付官方.net版 ...

  8. .NET微信公众号开发-5.0微信支付

    一.前言 在开始做这个功能之前,我们要做的第一件事情就是思考,如何做这个微信支付,从哪里开始,从哪里入手,官方的sdk说明什么的,有没有什么官方的demo,还有就是老板给我的一些资料齐全不,那些要申请 ...

  9. 微信公众号开发《三》微信JS-SDK之地理位置的获取,集成百度地图实现在线地图搜索

    本次讲解微信开发第三篇:获取用户地址位置信息,是非常常用的功能,特别是服务行业公众号,尤为需要该功能,本次讲解的就是如何调用微信JS-SDK接口,获取用户位置信息,并结合百度地铁,实现在线地图搜索,与 ...

  10. 微信公众号开发C#系列-2、微信公众平台接入指南

    概述 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流程是这样的,用户发送消息到微信服务器,微信服务器将接收到的消息post到用户接入时填写的url中,在url处理程序中,首先 ...

随机推荐

  1. 跳蚤[BZOJ4310](后缀数组+二分答案传判定)

    不知道后缀数组的请退回去! 题面: 题目描述 很久很久以前,森林里住着一群跳蚤.一天,跳蚤国王得到了一个神秘的字符串,它想进行研究.首先,他会把串分成不超过 k 个子串,然后对于每个子串 S,他会从S ...

  2. vue通过路由传值及在页面刷新后如何保存值

    1.普通的路由跳转 方式一:通过routerLinkTo方式,转为a标签的跳转,to里面相当于a标签的href路径 如下: 方式二:通过this.$router.push方式: 如下: 2.带参数的路 ...

  3. php 实现店铺装修2

    <?php namespace Webapp\Model; use Common\Model\DataModel\FlagShopCategoryModel; use Common\Model\ ...

  4. Button btn = sender as Button; //创建Button对象 这句话中Sencler和as是什么。怎么使用Sender和as

    ender是个object类型的变量名,通常都是事件的默认参数名,而这个变量存的是触发这个事件的控件,而as 可以理解为抽象,它把object类理的sender变量抽象成了(Button)类型.这样它 ...

  5. MySQL查询事务 杀死事务

    遇到 com.mysql.jdbc.exceptions.jdbc4.MySQLTransactionRollbackException: Deadlock 查询: SELECT * FROM inf ...

  6. 2-10 就业课(2.0)-oozie:10、伪分布式环境转换为HA集群环境

    hadoop 的基础环境增强 HA模式 HA是为了保证我们的业务 系统 7 *24 的连续的高可用提出来的一种解决办法,现在hadoop当中的主节点,namenode以及resourceManager ...

  7. PHPstudy2018 后门简单使用

    首先声明,仅为记录使用. 测试用例php-5.4.45 + Apache index.php 使用Firefox 浏览器,可以编辑并且重发http请求 打印出“net user” base64 加密后 ...

  8. postProcessBeanFactory方法源码跟踪

    看这篇文章之前可以先了解之前的跟踪流程,https://www.jianshu.com/p/4934233f0ead 代码过宽,可以shift + 鼠标滚轮 左右滑动查看 AbstractApplic ...

  9. MongoDB首次启动常见问题

    问题1. exception in initandlisten 29 data directory /data/db not found 问题:MongoDB默认存储路径为/data/db,这里显示没 ...

  10. 创建一个TCP代理

    代理技术 代理一般被我们用于"穿墙",具体来说可以看这里,或者查wiki.理解代理背后的原理之后,便很容易知道,代理的作用不仅仅只是"穿墙".例如我们可以把经过 ...