前端与原生交互
vue记录
ES6
jquery常见问题
JS常见问题
do not track (禁止跟踪)
链接:https://www.zhangxinxu.com/wordpress/2018/07/navigator-do-not-track-api/
Ajax跨域问题解决
other
css
- CSS BFC
js
promise
跨域
Macrotask Queue和Microtask Queue
数组排序
数组去重
ES6
WebAssembly 是一种可以使用非 JavaScript 编程语言编写代码并且能在浏览器上运行的技术方案。、
ES5,ES6中this指向
理解 JavaScript 中的 This, Bind, Call 和 Apply
详情如何判断object是数组类型?
1、从原型入手,Array.prototype.isPrototypeOf(obj);
2.Array.isArray()方法。例:Array.isArray([1, 2, 3]); // true精确获取页面元素位置的方式有哪些
1
2
3
4
5var X= this.getBoundingClientRect().left;
var Y =this.getBoundingClientRect().top;
//再加上滚动距离,就可以得到绝对位置
var X= this.getBoundingClientRect().left+document.documentElement.scrollLeft;
var Y =this.getBoundingClientRect().top+document.documentElement.scrollTop;事件委托
又叫事件代理,利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件;
作用:
在JavaScript中,添加到页面上的事件处理程序数量将直接关系到页面的整体运行性能,因为需要不断的与dom节点进行交互,访问dom的次数越多,引起浏览器重绘与重排的次数也就越多,就会延长整个页面的交互就绪时间,这就是为什么性能优化的主要思想之一就是减少DOM操作的原因;如果要用事件委托,就会将所有的操作放到js程序里面,与dom的操作就只需要交互一次,这样就能大大的减少与dom的交互次数,提高性能;
JS字符串控制
css3变量
一、变量是个好东西
在任何语言中,变量的有一点作用都是一样的,那就是可以降低维护成本,附带还有更高性能,文件更高压缩率的好处。
随着CSS预编译工具Sass/Less/Stylus的关注和逐渐流行,CSS工作组迅速跟进CSS变量的规范制定,并且,很多浏览器已经跟进,目前,在部分项目中已经可以直接使用了。
Chrome/Firefox/Safari浏览器都是绿油油的,兼容性大大超出我的预期,于是果断尝鲜记录下语法用法和特性。
二、CSS变量var()语法和用法和特性
CSS中原生的变量定义语法是:–*,变量使用语法是:var(--*)
,其中*
表示我们的变量名称。关于命名这个东西,各种语言都有些显示,例如CSS选择器不能是数字开头,JS中的变量是不能直接数值的,但是,在CSS变量中,这些限制通通没有,例如: