前言 在手机上通过网页 input 标签拍照上传图片,有一些手机会出现图片旋转了90度的问题,包括 iPhone 和个别三星手机。这些手机竖着拍的时候才会出现这种问题,横拍出来的照片就正常显示。 (file, function() { var Orientation = EXIF.getTag(this, 'Orientation'); }); file 则是 input 文件表单上传的文件 上传的文件经过 fileReader.readAsDataURL(file) 就可以实现预览图片了,这方面不清楚的可以查看:HTML5 进阶系列:文件上传下载 旋转 旋转需要用到 canvas 的 rotate 压缩 手机拍出来的照片太大,而且使用 base64 编码的照片会比原照片大,那么上传的时候进行压缩就非常有必要的。 因此第一步需要先对上传照片的宽高做限制,判断宽度或高度是否超出哪个范围,则等比压缩其宽高。
代金券、腾讯视频VIP、QQ音乐VIP、QB、公仔等奖励等你来拿!
现在科技太发达,移动设备像素越来越高,随便一张照片2M+,但是要做移动端图片上传和pc上略有不同,移动端你不能去限制图片大小,让用户先处理图片再上传,这样不现实。 所以理解的解决方案就是在上传先进行图片压缩,然后再把压缩后的图片上传到服务器。 一翻google之后,发现了localResizeIMG,它会对图片进行压缩成你指定宽度及质量度并转换成base64图片格式,那么我们就可以把这个base64通过ajax传到后台,再进行保存,先压缩后上传的目的就达到了 LocalResizeIMG压缩图片 AjaxPost图片base64到后台 后台接收base64并保存,返回状态 前台代码 重点,引用LocalResizeIMG.js(插件主体)及mobileBUGFix.mini.js(移动端的补丁 DOCTYPE HTML> <html> <head> <meta charset="UTF-8"> <title>移动端图片上传解决方案localResizeIMG先压缩后ajax无刷新上传</title
作者|林鑫 原文|http://imweb.io/topic/59559c01ad7fa941029740aa 前言 在手机上通过网页 input 标签拍照上传图片,有一些手机会出现图片旋转了90度的问题 exif.js 获取 Orientation : file 则是 input 文件表单上传的文件。 上传的文件经过 fileReader.readAsDataURL(file) 就可以实现预览图片了,这方面不清楚的可以查看:HTML5 进阶系列:文件上传下载(https://github.com/lin-xin 压缩 手机拍出来的照片太大,而且使用 base64 编码的照片会比原照片大,那么上传的时候进行压缩就非常有必要的。 因此第一步需要先对上传照片的宽高做限制,判断宽度或高度是否超出哪个范围,则等比压缩其宽高。 第二步就通过 canvas.toDataURL() 方法来压缩照片质量。
在前端的移动Web开发中,有一部分事件只在移动端产生,如触摸相关的事件。接下来给大家简单总结一下移动端的事件。 1. PC端事件在移动端的兼容问题 1.1 click事件的200~300ms延迟问题 由于移动端默认的布局视口宽度是980像素,所以网页文字非常小,为了快速让网页还原到原来的大小,Safari最新引入了双击缩放功能 移动端特有的touch事件 由于移动端设备大都具备触摸功能,所以移动端浏览器都引入了触摸(touch)事件。 封装移动端tap事件 由于点击事件经常使用,如果用click会有延迟问题,一般我们会用touch事件模拟移动端的点击事件, 以下是封装的几个事件,仅供参考。 ---- 参考文章: 移动端web开发---Touch事件详解 MDN:TouchEvent 移动端前端常见的触摸相关事件touch、tap、swipe等整理
DOCTYPE html> <html> <head> <title>pc和手机端的图片上传处理</title> <meta charset="utf-8" /> <meta p><input type="file" accept="image/*" id="upload" name="upload">
移动端浏览器我们主要针对webkit内核进行兼容 现在移动端碎片化比较严重,分辨率和屏幕尺寸大小不一 1、移动端调试方法 Charome DevTools(谷歌浏览器) 的模拟手机调试 搭建本地 是厂商在出厂时就设置好的 开发时用的1px不一定等于1个物理像素 PC端页面1px就等于1个物理像素,但移动端不尽相同 一个px能显示的物理像素点的个数,称为物理像素比或屏幕像素比 4.1单独移动端页面(主流) 通常情况下,网址域名前面加m(mobile)可以打开移动端。 通过设备判断,如果是移动端打开,则自动跳转到移动端页面。 ,需花费很大精力去调兼容性问题 媒体查询 bootstarp 5.移动端技术解决方案 5.1移动端浏览器 移动端浏览器基本以webkit内核为主,所以就考虑webkit兼容性问题。
移动端基础 移动端浏览器我们主要针对webkit内核进行兼容 现在移动端碎片化比较严重,分辨率和屏幕尺寸大小不一 1.移动端调试方法 Charome DevTools(谷歌浏览器) 的模拟手机调试 是厂商在出厂时就设置好的 开发时用的1px不一定等于1个物理像素 PC端页面1px就等于1个物理像素,但移动端不同 一个px能显示的物理像素点的个数,称为物理像素比或屏幕像素比 3.2 4.1单独移动端页面(主流) 通常情况下,网址域名前面加m(mobile)可以打开移动端。 通过设备判断,如果是移动端打开,则自动跳转到移动端页面。 ,需花费很大精力去调兼容性问题 媒体查询 bootstarp 5.移动端技术解决方案 1.移动端浏览器 移动端浏览器基本以webkit内核为主,所以就考虑webkit兼容性问题。
移动端浏览器我们主要针对webkit内核进行兼容 现在移动端碎片化比较严重,分辨率和屏幕尺寸大小不一 1.移动端调试方法 Charome DevTools(谷歌浏览器) 的模拟手机调试 是厂商在出厂时就设置好的 开发时用的1px不一定等于1个物理像素 PC端页面1px就等于1个物理像素,但移动端不同 一个px能显示的物理像素点的个数,称为物理像素比或屏幕像素比 3.2 4.1单独移动端页面(主流) 通常情况下,网址域名前面加m(mobile)可以打开移动端。 通过设备判断,如果是移动端打开,则自动跳转到移动端页面。 ,需花费很大精力去调兼容性问题 媒体查询 bootstarp 5.移动端技术解决方案 1.移动端浏览器 移动端浏览器基本以webkit内核为主,所以就考虑webkit兼容性问题。
实习期间主要在写微信端H5,遇到的最大问题就是适配各个不同尺寸的屏幕。公司就我自己一个前端,只能自己摸索着来。
判断移动端或pc端 经常在项目中会有支持 pc 与手机端需求。并且pc与手机端是两个不一样的页面。这时就要求判断设置,根据不同的设置跳转不同的路由。 先写个方法: ? _isMobile()) { alert("移动端"); //移动端跳转路由 } else { alert("pc端"); //Pc端跳转路由
由于移动端的特殊性,屏幕的尺寸碎片化严重,要想很好的适配不同的尺寸的设备,需要我们前端开发相比PC端要做一些基层的适配方案。 1. 优点:布局快速简单方便、在移动设备中水平表现良好差异不大。 缺点:由于垂直方向像素恒定,可能水平很宽的屏幕会被拉伸变形严重,另外在高倍屏幕上1像素可能被多倍的物理像素显示,会变的非常粗。 2.1 横向百分比 + 纵向高度固定 首先看案例: 拉勾网移动端首页顶部的logo区域,不管如何变化浏览器的宽度,高度不变化,宽度自适应。 这样优点非常多,首先开发人员直接像素还原,开发效率很高,也没有移动端1像素的问题。也是老马推荐大家使用的方式。
由于移动端的特殊性,屏幕的尺寸碎片化严重,要想很好的适配不同的尺寸的设备,需要我们前端开发相比PC端要做一些基层的适配方案。 1. 优点:布局快速简单方便、在移动设备中水平表现良好差异不大。 缺点:由于垂直方向像素恒定,可能水平很宽的屏幕会被拉伸变形严重,另外在高倍屏幕上1像素可能被多倍的物理像素显示,会变的非常粗。 2.1 横向百分比 + 纵向高度固定 首先看案例: 拉勾网移动端首页顶部的logo区域,不管如何变化浏览器的宽度,高度不变化,宽度自适应。 ? 这样优点非常多,首先开发人员直接像素还原,开发效率很高,也没有移动端1像素的问题。也是老马推荐大家使用的方式。
本文作者:IMWeb 袁飞翔 原文出处:IMWeb社区 未经同意,禁止转载 前言 花样直播项目客服端的动画基本已都使用web来做,总结分享一下 方案列表 css3动画 canvas 动画 播图片 案例: 花样直播爵位升级动画 结尾 具备离线包功能的客服端,尽量使用播图片方案。否则性能问题是一个很难踏过的大坑
Skinned Mesh虽然这里写死了限制最多75个骨骼,实际上可以通过修改引擎源代码来放宽限制:
源码地址: https://github.com/iamjoel/mobile-codes-collection 。感兴趣的 Star 下哦,也欢迎 Pull...
腾讯移动金融开发平台(TMF)为银行、互联网金融、保险、证券客户提供一站式、覆盖全生命周期的移动金融服务。核心服务包括APP客户端开发组件、应用加固、环境安全检测等APP开发运营关键服务,帮助金融机构低成本、高效率地打造移动金融服务…...
扫码关注腾讯云开发者
领取腾讯云代金券