1.setTimeout致使页面的卡顿或是不流畅,打乱模块的生命周期 ,还有setTimeout其实是很难调试的. 当一个页面有众多js代码的时候,setTimeout就是导致页面的卡顿. var setTimeOut=setTimeout(function(){ console.log("延迟事件执行");},200);同样的代码在web端和APP端的执行的代码的效率会有很大的差异2.不要在setTimeOut里面嵌套setInterval,同样会导致页面的卡顿. var setTi…
相信很多朋友遇到过有些网站,可以直接通过一个连接就能让你的手机打开微信且跳转到某个指定的页面,许多程序员很好奇到底是怎么实现的,到处求这种方法的源码,在文本中我会介绍及剖析这种跳转实现的原理. 微信是个比较封闭的环境,至于为什么封闭,相信大家都了解,在一些应用场景中,我们要用到外部浏览器跳转到微信内部打开,比如添加好友.微信支付等,在微信内部环境直接长按二维码就能实现,确实方便很多. 言归正传,所有可以唤起微信的地址最终都会被转化为:“ weixin://...ticket=...”这种格式,其…
最近在修改网站的响应式的页面时,由于都是套样式页面,修改过程都是粘贴复制,导致了一些细节问题在IE8下暴露出来: 遇到的问题就是在在Chrome,火狐页面都正常,唯独在IE8下页面样式显示乱样了,但是本地就显示正常,Tomcat缓存也清楚了,再加上自己也是个小白,周末平静了一天半终于找到问题的源头了,其实解决办法也很简单,如图: 我最初是将小脚本写在<!DOCTYPE html>文档都上方的,但是在IE8浏览文本模式默认就编程了“Quirks”模式,显示不正常,后来改成了写在文档头下方就可以正…
在APP开发过程中,通过外部浏览器调起APP页面的场景也很普遍使用.下面就介绍一下通过外部H5页面唤起APP中页面的通用方法. 1.首先需要在AndroidMainifest.xml中对你要启动的那个activity进行如下设置: <activity android:name=".MainActivity" android:launchMode="singleTask"> <intent-filter> <action android:…
说到 Android 系统手机,大部分人的印象是用了一段时间就变得有点卡顿,有些程序在运行期间莫名其妙的出现崩溃,打开系统文件夹一看,发现多了很多文件,然后用手机管家 APP 不断地进行清理优化 ,才感觉运行速度稍微提高了点,就算手机在各种性能跑分软件面前分数遥遥领先,还是感觉无论有多大的内存空间都远远不够用.相信每个使用 Android 系统的用户都有过以上类似经历,确实,Android 系统在流畅性方面不如 IOS 系统,为何呢,明明在看手机硬件配置上时,Android 设备都不会输于 IO…
1.setTimeout和setInterval都属于js中的定时器,可以规定延迟时间再执行某个操作,不同的是setTimeout在规定时间后执行完某个操作就停止了,而setInterval则可以一直循环执行下去. 下面介绍一下两种定时器的语法: setTimeout(expression,milliseconds)  以及 setInterval(expression,milliseconds) 其中 expression是将要执行的某一项操作,而milliseconds则是延迟时间,expr…
转载:http://gold.xitu.io/post/582583328ac247004f3ab124 1, 感知卡顿 用户对卡顿的感知, 主要来源于界面的刷新. 而界面的性能主要是依赖于设备的UI渲染性能. 如果我们的UI设计过于复杂, 或是实现不够好, 设备又不给力, 界面就会像卡住了一样, 给用户卡顿的感觉. 1.1 16ms原则 在剖析卡顿的原因之前, 我们先来了解下Android中著名的"16ms"原则: Android系统每隔16ms会发出VSYNC信号重绘我们的界面(A…
刚发布版本,忽然发现加载界面需要3-5秒延迟,那么问题来了. 首先,发现问题: 1.看代码,基于之前版本更新都没出问题,还是比较确信不是代码中的bug,以防万一,还是仔细看了下关于界面跳转部分的代码,那么ok,问题不在这里. 2.然后用工具,看看界面延迟在哪些地方了,打开instruments,启动我的app,得到运行结果如下图. 发现是在TableViewController 在调用 dequeueReusableCellWithIdentifier: 函数的时候耗时过长,打开System L…
前言  前几天用户反映在录入资料时一不小心错按Backspace键,就会直接回退到是一个页面,导致之前辛辛苦苦录入的资料全部丢失了.哦?居然还有这种情况.下面我们来一起探讨一下吧! Windows系统下独有的行为  Windows下的IE.FireFox和Chrome 52之前的浏览器,当焦点不在一个可编辑的元素上时,按Backspace键就会回退到上一个页面,按Shift+Backspace键则会前进到下一个页面.  而Chrome 52以后的浏览器则屏蔽了Backspace和Shift+Ba…
在linux环境下,配置了nginx负载均衡,由于可能在虚拟主机的配置文件nginx.conf中,对缓存机制未配置成功,导致页面不刷新,仍然显示缓存中的内容. 最后通过注释nginx.conf文件中的相关缓存配置,然后到tmp目录下查看已生成的缓存文件,如图: 这里我们需要将proxy_cache以及proxy_temp文件删除: 重启nginx服务:sercive nginx restart 页面刷新的问题解决了...…