移动端事件疑难杂症总结

移动端事件梳理 click事件 300ms延迟 禁用缩放 <meta name="viewport" content="user-scalable=no"/> html { -ms-touch-action: manip...

2019-07-07 13:09:29

阅读数 24

评论数 0

DOM获取尺寸、位置数据字典

关于DOM尺寸、位置相关的api,非常混乱且容易混淆,于是特别整理出一个数据字典。 注意 width()和offsetWidth、clientWidth在插入DOM树之前为0 涉及CSS的定位,以子元素margin为准;否则以子元素border为准,例如element.style...

2019-06-30 17:29:29

阅读数 16

评论数 0

阻止事件冒泡和围绕.on()方法 [.selector]事件委托中冒泡情况的探讨

2019-7-23更新: 1. document和body代理事件,在某些浏览器无效,目前发现在微信浏览器无效。 2. 前端使用模板引擎渲染的节点,可能滞后与事件的绑定,因此这种情况下最适合事件代理。 一、事件冒泡和阻止事件冒泡 事件冒泡是JavaScript的核心概念之一,它的原理很...

2017-10-04 23:02:15

阅读数 1361

评论数 0

input && nextTick

input之后,nextTick

2019-08-11 16:51:17

阅读数 6

评论数 0

nvm-windows安装踩坑

nvm的目录不能带有空格,例如Program Files 如果你是第一次下载,在use之前,C:\dev目录下是没有nodejs这个文件夹的,在输入比如: nvm use 5.11.0 之后,你会发现,C:\dev目录下多了一个nodejs文件夹,这个文件夹不是单纯的文件夹,它是一个快捷方式,...

2019-07-29 20:09:53

阅读数 42

评论数 0

前端模块化总结

前端模块化演进 函数封装 =》对象 =》立即执行函数 =》 CommonJS AMD CMD =》ES6 module & webpack 函数封装 缺点: 污染了全局变量 变量名重名 模块成员之间没什么关系 对象 缺点: 外部可以随意修改内部成员,安全问题 立即执行函数...

2019-07-16 12:40:54

阅读数 12

评论数 0

【移动端事件】swiper左右滑动时禁止页面上下滚动

某些swiper类插件,左右滑动时会导致页面上下滚动,如果在touchmove事件中直接使用event.preventDefault(),就会彻底阻止触摸滑动,给用户的感受就是划不动。 以下是增加的fix code // 左右滑动时阻止页面上下滑动 var touchElement...

2019-07-16 12:31:17

阅读数 100

评论数 0

关于input元素和小程序input组件的差异、内容区高度、以及浏览器样式的问题

input元素:都有默认样式,HTML的input元素继承浏览器,小程序是组件设置的默认样式

2018-08-22 10:44:59

阅读数 381

评论数 0

sublime text3 使用技巧(网上不易查询到的)

修改主体方案 在st安装目录下package文件夹中,将相应的后缀为-package的文件加扩展名.zip或.rar转为压缩包。 解压缩,找到需修改的主体方案(.tmTheme),例如我要修改的主体方案Monokai.tmTheme,进行修改。 完成后重新打包,并去掉扩展名,恢复原来的以-pa...

2018-06-13 10:45:58

阅读数 383

评论数 0

addEventListener事件监听使用匿名函数作为回调函数的问题

addEventListener事件监听绑定匿名函数,不能用removeEventListener解除绑定,JS认为这不是对应的那个函数。 因此,如果多次执行addEventListener(例如addEventListener事件绑定写在在mousemove事件内),使用匿名函数作为回调函数就...

2018-06-01 13:22:14

阅读数 1004

评论数 0

[JavaScript]元素尺寸定位总结[含兼容性、文档模式测试]

1. 基本概念 相对于定位了的父容器 注意不含滚动条宽度 相当于content+padding 注意不含滚动条宽度 注意不含border 相对定义了relative的父容器,以子元素margin左上角,父元素padding左上角为准 offsetWidth clientWidth scr...

2018-04-15 00:28:06

阅读数 105

评论数 0

attr属性和prop特性的区别

attr——映射到prop HTML标签的属性——初始状态 checked 是个布尔值,只要存在该属性即为true checked=”checked”或checked=其它任意数据类型(false、空字符串), 赋的只是字面量,不改变本身的属性值true prop——不会影响attr D...

2018-03-24 00:05:48

阅读数 760

评论数 1

debug过程中对加载顺序、对象属性、Vue数据传递和计算属性等问题的总结

异步加载 JavaScrip 脚本放在<head>内:文档页面加载之前装载(不执行代码, 需调用才执行或事件触发执行)。 脚本放在<body&...

2018-03-11 16:08:27

阅读数 1065

评论数 0

从jQuery的remove()和原生JS的removeChild()方法再观jQuery对象和DOM对象的关系

jQuery对象是通过jQuery包装DOM对象后产生的对象。jQuery的remove()方法和原生js的removeChild()方法都是从DOM中删除节点,方法的返回值是:1. remove()方法:返回一个指向已被删除的节点的引用,这个节点元素还可以使用;2. removeChild()方...

2018-01-23 00:57:10

阅读数 4468

评论数 0

JS原生数组迭代方法的应用

原生JS的数组迭代方法应用非常广,相比于for循环遍历,代码结构简单、规整,但使用也要非常注意。      以下是本人学习过程中对数组迭代方法的典型应用。 1. map()和forEach()方法填坑。    这是Vue获取API新闻列表中的代码片段,计算属性processedPosts,对...

2018-01-18 02:18:41

阅读数 143

评论数 0

【干货】前端重要概念精炼总结--持续更新

1. Q: JavaScript脚本放在哪里     A: 放在header中的脚本,在页面加载之前就被装载,待调用(例如事件),类似函数声明;放在body中的脚本,在页面加载完成后就执行,类似于执行一个函数。

2018-01-17 19:34:53

阅读数 202

评论数 0

Vue2.0使用axios引入本地JSON文件踩的坑

今天学习Vue2.0使用axios引入本地JSON文件踩的坑。 1.如何引入axios,import、prototype   本地JSON文件需放在static文件夹之下。(以及图片文件)。参见http://blog.csdn.net/Mr_YanYan/article/details...

2017-12-28 01:30:29

阅读数 12964

评论数 0

浏览器中的 ES6 module 实现

捣腾了一晚上,发现在浏览器实现ES6 module必须,使用firefox54以上和chrome60以上,并且chrome仍然有问题,跨域报错,得放在服务器下,firefox可以实现。 文章转载至众成翻译-文蔺 http://www.zcfy.cc/article/ecmascri...

2017-12-13 00:27:10

阅读数 730

评论数 0

[JavaScript,ES6]函数声明提升和预解析的总结和试验

1. 变量的声明被提前到作用域顶部,赋值保留在原地 2. 函数声明整个“被提前” (且后面不再重新“赋值”) 3. 函数表达式时,只有变量“被提前”了,函数没有“被提前” 4. 在块中定义的函数声明或函数表达式,只会提升其声明部分,也就是只提升变量名,不提升函数的定义哦。不要在块中声明函数! 5...

2017-12-09 18:42:31

阅读数 505

评论数 0

[Vue]不能使用索引直接修改数组,但可以使用索引更新对象数组内的属性

由于 JavaScript 的限制,Vue 不能检测以下变动的数组 当你利用索引直接设置一个项时,例如:vm.items[indexOfItem] = newValue当你修改数组的长度时,例如:vm.items.length = newLength 可以使用Vue.set和j...

2017-12-02 01:33:04

阅读数 3481

评论数 0

提示
确定要删除当前文章?
取消 删除