移动端经常出现的兼容问题,谈谈移动端应用或者wap站的一些优化技巧和心得 1.        安卓浏览器看背景图片,有些设备会模糊. 因为手机分辨率太小,如果按照分辨率来显示网页,字会非常小,安卓手机devicePixelRatio比较乱,有1.5的,有2的也有3的.想让图片在手机里显示更为清晰,必须使用2x的背景图来代替img标签(一般情况都是用2倍),或者指定 background一size:contain;都可以 2.        防止手机中网页放大和缩小 <meta name="…
1.前言 IM App 是我做过 App 类型里复杂度最高的一类,里面可供深究探讨的技术难点非常之多.这篇文章和大家聊下从移动端客户端的角度所关注的IM消息可靠性和送达机制(因为我个人对移动客户端的经验积累的比较丰富嘛). 学习交流: - 即时通讯开发交流群:320837163[推荐] - 移动端IM开发入门文章:<新手入门一篇就够:从零开发移动端IM> (本文同步发布于:http://www.52im.net/thread-1470-1-1.html) 2.关于作者   作者网名:Peak,…
介绍 我们经常遇到一种情况.当滑动滚动条区域时,子元素滚动条到底部或顶部时就会触发父级滚动条,父级滚动条同理会继续向上触发,直至body容器.这是浏览器默认的滚动行为. 但是很多情况,我们想要子元素滚动完成后,不触发父元素的滚动,比如 modal.侧边栏 等等. 深入研究-webkit-overflow-scrolling:touch及ios滚动 详细文档 & 例子 Document & Demo vue-scroll-lock 一个 VUE 组件:子元素 scroll 父元素容器不跟随滚…
vuejs服务端渲染更好的SEO,SSR完全指南Nuxt.js静态站生成器SSR 完全指南https://cn.vuejs.org/v2/guide/ssr.html在 2.3 发布后我们发布了一份完整的构建 Vue 服务端渲染应用的指南.这份指南非常深入,适合已经熟悉 Vue, webpack 和 Node.js 开发的开发者阅读.请移步 ssr.vuejs.org.Vue SSR 指南 | Vue.js 服务器端渲染指南https://ssr.vuejs.org/zh/ Nuxt.js(ht…
废话少说: 在PC端可以用mousedown来触发一个滑块滑动的效果,但在手机上,貌似无法识别这个事件,但手机上有touchstart事件,可以通过一系列"touch"事件来替代PC端的"mouse"事件. 移动端触屏滑动的效果其实就是图片轮播,在PC的页面上很好实现,绑定click和mouseover等事件来完成.但是在移动设备上,要实现这种轮播的效果,就需要用到核心的touch事件.处理touch事件能跟踪到屏幕滑动的每根手指. 以下是四种touch事件 tou…
在手机端,堆叠效果的相冊是比較常见的一种图片展示方式,每一个人的思路可能会有一些不同,实现的方法不同. 本篇博客主要是分享下我的实现方法.欢迎大家提出建议,指出我的不足,先3Q啦~ 先看一下终于的效果图: 思路和原理分析: 1.首先是布局上的问题.默认显示五张错位图片,剩下的图片遮挡在第五张图片的背后.错位使用的是css3的transform的属性,使用rotate属性值.对显示的五张图片进行不一样的旋转. 2.js实现上的问题. (1)推断移动端和pc端.相应兼容使用mouse事件还是touc…
移动端rem适配js // 默认375,750设计稿请将375替换为750 (function (doc, win) { // 移动端适配 var docEl = doc.documentElement, isIOS = navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), dpr = isIOS ? Math.min(win.devicePixelRatio, 3) : 1, dpr = window.top === windo…
暂时实现的效果: http://sandbox.runjs.cn/show/v2vkds3j <form action=""> <img id="viewImg" src="photos.png" alt=""> <input type="file" id="file"> </form> css: #file{ position: abso…
最近在 安卓自带浏览器 上发现  new CustomEvent('input') 不兼容 解决办法 (function () { if(!!window.CustomEvent) return; function CustomEvent ( event, params ) { params = params || { bubbles: false, cancelable: false, detail: undefined }; var evt = document.createEvent( '…
CSS3的标准并没有全部定稿,目前CSS3的标准分成了不同的模块,具体的标准由各个模块推动标准和定稿,标准制定的过程中,浏览器也在不断的发新的版本来兼容新的标准.浏览器有时会给一些在试验阶段或非标准阶段的css属性添加前缀, 这样开发者就可以使用 浏览器行为的改变不会破坏标准. 开发人员应等待包含无前缀属性,直到浏览器行为标准化. 1. 主流浏览器引擎前缀 -webkit- (谷歌, Safari, 新版Opera浏览器等)-moz- (火狐浏览器)-o- (旧版Opera浏览器等)-ms- (…