最近在开发移动端项目时,需要用到的本地存储的地方不少.都是一些只要记住当前打开窗口的用户数据就行,所以我选择用的sessionStorage.使用场景如下: A.html页面需要记录一条数据{a:1,b:2}; sessionStorage.setItem("data","{a:1,b:2}"); B.html页面取出使用; sessionStorage.getItem("data"); // 获取结果为null 问题:如果项目不是单页面复应用,…
前言 这篇博客有点长,如果你是高手请您读一读,能对其中的一些误点提出来,以免我误人子弟,并且帮助我提高 如果你是javascript菜鸟,建议您好好读一读,真的理解下来会有不一样的收获 在下才疏学浅,文中难免会有不同程度的错误,请您指正留言 PS:事件阶段一节请看最新博客,之前理解有误 javascript事件基础 我们的网页之所以丰富多彩并具有交互功能,是因为我们的javascript脚本语言,而javascript与HTML之间的交互又是通过事件机制实现的 所以,事件是javascript一…
汽车H5使用ReactJs问题汇总 Q:安卓4.4webview显示空白? A:初步怀疑是css属性没有加前缀引发的兼容问题,但添加后发现也不行,通过webview调试后控制台输出Set is undefined,搜索后发现React依赖集合类型 Map 和 Set.所以如果要兼容低版本浏览器可以引入一个全局的 polyfill,例如 core-js 或 babel-polyfill. Q:安卓低版本点击事件不生效? A:调试检查发现该点击事件中使用了for of语法,无法兼容低版本,使用map…
最近公司官网需要使用视频当做banner背景且自动播放,并且因为是官网需要做到PC端和移动端都可以适配兼容,这些问题很是头疼: 兵来将挡,水来土掩,进过查阅相关技术资料,现已完美兼容PC端和移动端.下面就为大家详细讲解: PC端: PC端相应简单些,浏览器对<video>标签的兼容还是很好的,但是想要在浏览器中当做Banner视频自动播放就必须设置这些属性来更好地实现: <video // 设置后,音频会初始化为静音,注意浏览器只有设置静音,才能自动播放 muted // 视频会马上自动…
作用 e.path 用来获取点击元素及以上所有父元素的一个数组 问题 当在移动端会有获取不到e.path的问题 不兼容 解决 let path = event.path || (event.composedPath && event.composedPath());…
移动设备上不支持鼠标事件,好在webkit内核的移动浏览器支持 touch 事件,所以触摸事件是移动应用中所必须的.touchstart.touchmove.touchend事件可以类比于mousedown.mouseover.mouseup的触发. 一.touch 相应事件 touchstart : 当手指触摸屏幕时触发:即使已经有一个手指放在了屏幕上也会触发.touchmove : 当手指在屏幕上滑动时连续的触发.在这个事件发生期间,调用preventDefault()可阻止滚动.touch…
定时器 vue实例中定义timer多余,创建的定时器代码和销毁定时器的代码没有放在一起,通常很容易忘记去清理这个定时器,不容易维护:建议使用this.$once('hook:beforeDestory',()=>{}); _CountDownLoop() { let timer = null; timer = setInterval(() => { // to do }, 1000); this.$once('hook:beforeDestroy', () => { clearInter…
click的300ms延迟: 引入fastclick库来解决 输入命令 npm install fastclick 在main.js导入 import Vue from 'vue' import App from './App' import router from './router' import fastclick from 'fastclick' fastclick.attach(document.body) /* eslint-disable no-new */ new Vue({ e…
fasckclick为解决移动端300ms延迟而生 github地址为:https://github.com/ftlabs/fastclick 使用方法: 1. 原生使用(window.onload或其它方式皆可->一切都是在文档流加载完毕) if ('addEventListener' in document) { document.addEventListener('DOMContentLoaded', function () { FastClick.attach(document.body…
最近业务部门反映我们商城的兼容性不是很好,尤其是在IE浏览器上,经过调研,我们决定对IE9及以上版本的IE内核浏览器进行主流程测试,发现有哪些功能在IE9上不兼容 一.CSS兼容性 如下图所示 使用了Button标签,在IE浏览器或者是IE内核的浏览器按钮文字却没有显示.F12看下代码: 很明显,在IE浏览器少了个css属性:line-height:33px:加上这个属性,在IE浏览器上就可以显示文字了. Tip:今后如果有开发人员再使用button这个标签,记得加上line-height这个属…