微信开发平台(开发类)

作者: 枫之伊信 | 来源:发表于2017-09-17 14:22 被阅读236次
微信开发思维导图

一、用户体验篇 

1)手机滚动
全局滚动  滚动条在body节点或更顶层
局部滚动  滚动条在body下的某一个dom节点上

ios开发
全局滚动:默认支持
局部滚动:默认没有滚动条,且滑动起来干涩。
body{-webkit-overflow-scrolling:touch;} (快速滚动和回弹)

/*局部滚动的dom节点*/
.scroll-el{overflow:auto;}
建议:将属性挂在body上,可以避免很多奇怪的bug

流畅滚动的方法:(重要)
1、body上加上-webkit-overflow-scrolling:touch;
2、IOS尽量使用局部滚动
3、IOS引进ScrollFix避免出界
4、Android下尽量使用全局滚动:
      1)尽量不用overflow:auto;
      2)使用min-height:100% 代替height:100%
5、IOS下带有滚动条且position:absolute的节点不要设置背景色

2)请将屏幕竖向浏览(注:展示性页面可以用,输入框时不可用)
@media screen and (orientation: landscape){} 

移动开发之touch篇

1、移动端touch事件

touchstart 触摸开始(手指放在触摸屏上)
touchmove 拖动(手指在触摸屏上移动)
touchend 触摸结束(手指从触摸屏上移开)
当然还有一个touchcancel,是在拖动中断时候触发。(系统中断)

注:touch事件是原生事件,除了WP手机除外,移动端浏览器都支持touch事件。

而tap是单击和click一样,需要经历触摸开始和触摸结束俩阶段才触发。

2、移动端WEB开发,click,touch,tap事件浅析

tap是自定义事件,需要库的支持;click是原生事件,可以直接使用。

click 和 tap 比较
两者都会在点击时触发,但是在手机WEB端,click会有 200~300 ms,所以请用tap代替click作为点击事件。

关于tap的点透处理

在使用zepto框架的tap来移动设备浏览器内的点击事件,来规避click事件的延迟响应时,有可能出现点透的情况,即点击会触发非当前层的点击事件。

touch事件touch是针对触屏手机上的触摸事件。现今大多数触屏手机webkit内核提供了touch事件的监听,让开发者可以获取用户触摸屏幕时的一些信息。

移动端问题总结

1)部分android系统中元素被点击时产生的边框怎么去掉

a,button,input,textarea{
-webkit-tap-highlight-color: rgba(0,0,0,0;)
-webkit-user-modify:read-write-plaintext-only;
}

2)禁止操作 css3属性需要研究
pointer-events:none;

3)去除系统默认的样式
使用-webkit-appearance:none可去除系统默认的样式(重要)
注:只有两个内核的浏览器可以使用,其一是“webkit”,其二是“ff”的

4)webkit表单输入框placeholder的颜色值改变
input::-webkit-input-placeholder{color:#888;}
textarea::-webkit-input-placeholder { color: #f00; }

5)禁止ios 长按时不触发系统的菜单,禁止ios&android长按时下载图片
.css{-webkit-touch-callout: none}

6)禁止ios和android用户选中文字
.css{-webkit-user-select:none}

7)ios使用-webkit-text-size-adjust禁止调整字体大小
body{-webkit-text-size-adjust: 100%!important;}

最好的解决方案:
整个页面用rem或者百分比布局

8):before  :after使用
( input,img,iframe等元素都不能包含其他元素,所以不能通过伪元素插入内容。)

9)样式颜色设置
a,a:link,a:visited,a:hover,a:active{ color:inherit; text-decoration:none;}  在具体页面设置样式

10)多背景效果
例如:background:url(../img/logo.png) no-repeat 20px 40px,url(../img/bg1.jpg) no-repeat center;background-size:107px auto,cover;

11)calc用于动态计算长度值
css3的一个新增的功能,用来指定元素的长度。  (解决撑破容器的问题)
width:-webkit-calc(100% - 9px);    个人信息 input输入框撑破问题

12)iphone微信长按二维码无法识别
(手机微信6.0之后新增的一个功能  带有指纹的二维码图片)

iOS 版微信长按识别二维码的bug 与解决方案(重要)
1)通过img增加padding 增大可接触面积;这个需要微调。
2)为二维码图片本身增加透明底部背景,这也是我们团队采用的方案。类似下图的样子,前端上用户是看不到的;但有个缺点就是如果用户保存二维码后则不是那么好看。

13)移动端Web开发,怎么把ios下 input[type="text"]的圆角变成直角
可是在ios下 input框仍然有圆角,
Android和PC下为直角.
border-radius: 0;

14)oninput事件,实时验证
1)大部分手机输入英文和单个汉字时会按这个顺序依次执行一遍,输入多个汉字时只执行一次input事件。测试机(小米3,联想,广信s5),点击特殊键回车或前往 也会执行keydown,keypress,keyup
2)三星的比较特殊,点击任何键都有两次keydown 两次keyup一次input

结论:
1.keyup在输入多个汉字时不执行
2.特殊键时没必要执行keyup
3.三星会执行多次keyup
改进事件:用oninput事件
参考:多看网页版和wap版用的input事件,腾讯wap版无此功能。
另外,onchange事件排除,这个事件只有在失去焦点时才执行。

15)清除微信缓存空间(android或ios缓存问题)
微信 - 设置 - 通用按钮 - 清除微信缓存空间

微信推广

易企秀,兔展,MAKA三个H5制作工具分析测评

相关文章

  • 微信开发平台(开发类)

    一、用户体验篇 1)手机滚动全局滚动 滚动条在body节点或更顶层局部滚动 滚动条在body下的某一个dom节点上...

  • 微信开发者

    官网 微信开放平台微信公众平台微信云 微信开发者大本营吧微信开发吧 学习 方倍工作室 微信公众平台开发入门教程_新...

  • 小程序个人总结最佳实践

    一、开发环境 1.成为微信公众平台开发者 成为微信公众平台的开发者,是小程序开发的首要条件。只有成为微信公众平台的...

  • 微信小程序开发实战教程(1)--持续更新

    1.成为微信公众平台开发者 成为微信公众平台的开发者,是小程序开发的首要条件。只有成为微信公众平台的开发者,才可以...

  • 常见问题

    为了帮助开发者快速熟悉微信公众号开发,我们推出了微信公众平台开发者问答系统。 进入微信公众平台开发者问答系统

  • 01微信公众平台之开发中心

    1.微信公众平台的开发中心 微信公众平台的开发中心 在微信公众平台-开发-服务器配置,设置好服务器地址等配置信息,...

  • ionic3微信,QQ分享

    准备工作 微信开放平台开发者账号 腾讯开放平台开发者账号 1.微信开发平台注册登录创建应用获取wechatappi...

  • 东莞市玖速网络科技有限公司,一站式微信运营服务商,专业开发定制小

    1、微信运营:微信平台开发;微信平台运营。 2、小程序制作开发:图片拍摄处理,微官网、微商城,小程序运营托管,产品...

  • 微信小程序

    微信公众平台 到 微信小程序开发 到微信小程序文档。微信web开发者工具

  • 微信 JS-SDK

    概述 1月9日,微信公众平台面向开发者开放了微信内网页开发工具包(微信 JS-SDK),提供多达 11 类的接口。...

网友评论

    本文标题:微信开发平台(开发类)

    本文链接:https://www.haomeiwen.com/subject/zdnpsxtx.html