在移动端开发测试时,可以使用chrome自带的模拟设备进行快速高效的开发调试。但毕竟不是真手机,有些情况是无法覆盖的。手机测试因为我的手机是安卓的,通过开启usb调试,打开chrome的chrome://inspect/#devices。对于ios,安装xcode并打开模拟器。以上两种方式都是基于浏览器的,可以断点调试。对于非浏览器的应用测试,比如典型的微信,可以使用Vconsole以日志的形式查看开发过程中需要的相关信息。说说我在使用中遇到的问题,以及如何解决的。对于Android,在真机测试过程中,由于我们的项目为静态文件设置了独立的二级域名,所以在正常开发中js、css等都使用实线完整路径(主机映射、本地代理服务方法),导致手机测试无法访问。可以通过charles代理访问--->原理是在同一个局域网下,手机使用charles设置的代理服务器访问;对于ios,模拟器开启后,可以放在应用程序中,存放在dock中,方便下次使用。快速开始。安装时注意系统版本。xcode版本和系统有对应关系。为了做到这一点,系统已经升级了一个级别,而且不是更新。我机器上安装的对应版本(osx10.12<==>xcode8.3.3)。Charles代理已打开并设置了端口。手机需要配置相应的ip和端口。模拟器需要放在应用中,方便下次使用。布局是基于rem的,rem是基于html的font-size值。像素大小不会因为这个基数而改变。我们的设计稿基于iphone6,*2稿为750×1334,动态调整font-size以适应不同手机。var_rem=width/baseSize*baseFontSize;docEl.style.fontSize=_rem/defaultFontSize*100+'%';踏坑之旅图片保存在单独的静态服务器中,后台无法处理。页面下载时考虑使用,但需要做兼容性处理。基于我目前是手机浏览页面的考虑,如果不支持,长按保存的方法会通过提示来说明。下载兼容性说明适用于Chrome、Edge、Fire。fox、Opera和最新的Android4.4+浏览器,而不是InternetExplorer和Safari。另外,如果可以基于服务器端设置,就不会有兼容性问题。参考以下方法Content-Disposition:attachment;文件名=建议文件名.txt;当1个像素的缩放比例为1时,布局视口等于理想视口。但是此时会出现1像素的问题,因为layoutviewport是375px,但是dpr是2,1px其实就是2个物理像素。通过调整initial-scale=0.5,虽然此时布局视口比理想视口大,但此时的1px才是真正的1px==1物理像素。样式使用父级别的字体大小,在手机上显示会有延迟。字体和颜色需要直接设置到目标元素上。点击通过点击浮动下拉列表,再次点击时关闭。这时候会触发下面a元素的link的跳转事件,使用transition解决,0.5s。当然还有其他方式,比如使用封装的tap事件,fastclick等。在incognito模式(ios)项目中使用了LocalStorage,但是报错,通过模拟器控制台可以看到QuotaExceededError:Domexception的野生动物园。在ios模拟器上测试结果如下Cookies.set('name','jsdt');vara=Cookies.get('name');alert(a);//函数oklocalStorage.setItem('model',1);varb=localStorage.getItem('model')alert(b);//error因此决定对localStorage进行异常处理,在catch中使用cookies来代替localStorage的功能。我发现天猫首页会有营销弹窗,可以关闭两次,但是ios隐身模式关不掉,为什么不用cookies?这时候从产品的角度来说,既然你是隐身的,那么你每次进来都和第一次进来一样,不会记录你的任何操作,还是有道理的.Iscroll和fastclick冲突。fastclick的点击事件在Android浏览器和PC浏览器模拟器上运行正常,但在IOS上运行失败。看了下iscroll源码本身是支持tap事件的,重要逻辑如下//1008eventType(this.wrapper,'touchstart',this);注册事件监听器//1659handleEvent()//分发事件//248me.tap//触发自定义tap事件iscroll内部自定义了tap事件,通过handleEvent调用touchend后的tap方法。使用iscroll的tap事件解决兼容性问题。想了想,其实不需要iscroll,overflowscroll也可以直接用,只是效果没那么爽。综上所述,遇到的问题不仅限于以上几种。我将列出其中一些我认为重要的。总结和复习,加深印象,防止下次再遇到类似的问题。同时也希望能给大家一个参考。因为我做的是wap网站的首页,要求还原度100%。在追求1px的还原度的时候,仔细想想,你会发现1px误差下有很多理论上的东西,所以对自己的要求更高,能力提升也更快。如果头脑只是为了完成任务,那对个人来说意义不大。
