1 网址编码:网址都有自己的一个网址,不同页面也有自己的id网址,我们经常会把网址送入到后台,后台再处理不认识的顾浩,比如:换行等特是符号;所以我们要实现编码然后再传到后台。
encodeURIComponent()函数可把字符串作为URI组件进行编码;
decodeURIComponent()函数可把字符串作为URI组件进行解码;
2 截取字符串
slice(“起始位置”,[结束位置])起始位置一定要有,结束为止可以省略;取的结果一般不包括结束位置对应的那个元素;
substr(起始位置,[取的个数]);
3 保留小数位 eg 122340.12345 保留两位有效小数
可通过indexOf返回小数点的位置 截取字符串 console.log(str.substr(0,str.indexOf(".")+3));
先乘以100取整然后除以100: console.log(parseInt(PI*100)/100);
pi.toFixed(2) 保留2位小数 : console.log(PI.toFixed(2));
4 缓动动画公式:初始值:leader;结束值:target;
leader = leader + (target - leader)/10;
5 offset家族
在js中有一套方便的获取元素尺寸的办法就是offset家族;
offsetWidth得到对象的宽度; offsetHeight得到对象的高度,只要是offset都是自己的;
offsetLeft,offsetTop返回距离上级盒子(最近的带有定位)左边,上边的位置,如果父级没有定位则以body为准;
offsetParent返回该对象的父级(带有定位)不一定是亲的爸爸,如果当前元素的父级定位没有进行定位那么原则就是body;
6 事件(event)
在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息。
兼容性写法:var event = event || window.event;
7 pageX clientX screenX区别
screenX screenY 是以电脑屏幕为基准点测量的;
pageX pageY 是以我们的文档(绝对定位)的基准点对齐;
clientX clientY 以可视区域为基准点类似于固定定位;
8 div.onmouseover 和 div.onmousemove的区别:
div.onmouseover 只触发一次;
div.onmousemove 没移动一像素,就会触发一次;
9 拖动原理 == 鼠标按下接着 移动鼠标
btn.onmousedown = function(){
document.onmouseover = function(){
}
}
当我们按下鼠标的时候,就要记录当前鼠标的位置-大盒子的位置
算出btn元素的框架在大盒子内的距离。
onmouseup 当鼠标弹起; onmousedown 当鼠标按下的时候
我们知道 拖动时 一般会选择文字,所以还要清除选中的内容:
window.getSelection?window.getSelection.removeAllRanges():document.selection.empty();
encodeURIComponent()函数可把字符串作为URI组件进行编码;
decodeURIComponent()函数可把字符串作为URI组件进行解码;
2 截取字符串
slice(“起始位置”,[结束位置])起始位置一定要有,结束为止可以省略;取的结果一般不包括结束位置对应的那个元素;
substr(起始位置,[取的个数]);
3 保留小数位 eg 122340.12345 保留两位有效小数
可通过indexOf返回小数点的位置 截取字符串 console.log(str.substr(0,str.indexOf(".")+3));
先乘以100取整然后除以100: console.log(parseInt(PI*100)/100);
pi.toFixed(2) 保留2位小数 : console.log(PI.toFixed(2));
4 缓动动画公式:初始值:leader;结束值:target;
leader = leader + (target - leader)/10;
5 offset家族
在js中有一套方便的获取元素尺寸的办法就是offset家族;
offsetWidth得到对象的宽度; offsetHeight得到对象的高度,只要是offset都是自己的;
offsetLeft,offsetTop返回距离上级盒子(最近的带有定位)左边,上边的位置,如果父级没有定位则以body为准;
offsetParent返回该对象的父级(带有定位)不一定是亲的爸爸,如果当前元素的父级定位没有进行定位那么原则就是body;
6 事件(event)
在触发DOM上的某个事件时,会产生一个事件对象event,这个对象中包含着所有与事件有关的信息。
兼容性写法:var event = event || window.event;
7 pageX clientX screenX区别
screenX screenY 是以电脑屏幕为基准点测量的;
pageX pageY 是以我们的文档(绝对定位)的基准点对齐;
clientX clientY 以可视区域为基准点类似于固定定位;
8 div.onmouseover 和 div.onmousemove的区别:
div.onmouseover 只触发一次;
div.onmousemove 没移动一像素,就会触发一次;
9 拖动原理 == 鼠标按下接着 移动鼠标
btn.onmousedown = function(){
document.onmouseover = function(){
}
}
当我们按下鼠标的时候,就要记录当前鼠标的位置-大盒子的位置
算出btn元素的框架在大盒子内的距离。
onmouseup 当鼠标弹起; onmousedown 当鼠标按下的时候
我们知道 拖动时 一般会选择文字,所以还要清除选中的内容:
window.getSelection?window.getSelection.removeAllRanges():document.selection.empty();