![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JS
文章平均质量分 83
前端小vegetable
一个正在前端路上疯狂学习的小菜鸡
展开
-
获取元素相对于浏览器的距离
方法一 利用DOM元素的offsetParent属性对其父级进行遍历,拿到它们的offsetLeft相加,直到访问到body标签终止(body.offsetParent为null) function getOffsetLeft(obj, direction){ if(direction === "left"){ var tmpLeft = obj.offsetLeft; ...原创 2020-04-19 17:07:07 · 1123 阅读 · 0 评论 -
Vue数据双向绑定的实现
实现原理 利用Proxy代理实现对对象的代理,重写set方法,在对该代理对象就行赋值时,更新绑定该对象属性值的DOM元素。 首先定义两个input标签以及它们的label,还定义一个内容展示区,用于看到input标签内值改变时数据值的变化 <label for="name">姓名:</label> <input id="name" type="text" oninpu...原创 2020-04-18 12:01:10 · 227 阅读 · 0 评论 -
JS模块化
简介 js目前的主流模块化有CommonJS、AMD、CMD(阿里员工开发,但已经卖给国外,只需要做了解)、ES6规范。 CommomJS 首先是用在服务器端(Node)的规范,后来也可以用在浏览器端,但是需要提前打包编译(使用Browserify)。 基本语法 暴露模块: module.exports = value exports.xxx = value 注意暴露的模块是一个对象。 引入模块...原创 2020-03-01 14:14:50 · 204 阅读 · 0 评论