js 杂记

slice()
第一个参数代表开始位置,第二个参数代表结束位置的下一个位置,截取出来的字符串的长度为第二个参数与第一个参数之间的差;若参数值为负数,则将该值加上字符串长度后转为正值;若第一个参数等于大于第二个参数,则返回空字符串.

substring()
第一个参数代表开始位置,第二个参数代表结束位置的下一个位置;若参数值为负数,则将该值转为0;两个参数中,取较小值作为开始位置,截取出来的字符串的长度为较大值与较小值之间的差.

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

substr()
第一个参数代表开始位置,第二个参数代表截取的长度

函数:split() 
功能:使用一个指定的分隔符把一个字符串分割存储到数组

函数:Join() 
功能:使用您选择的分隔符将一个数组合并为一个字符串

 函数:indexOf()
功能:返回字符串中匹配子串的第一个字符的下标

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

eventListener 事件监听器

type:事件的类型,例如“click”,“hashchange”或“submit”。
target:派发事件的对象。
currentTarget:绑定当前监听器的对象
eventPhase:事件发生的阶段,包NONE, CAPTURING_PHASE, AT_TARGET, BUBBING_PHASE
stopPropagation:当事件在树中派发时,可以调用此函数来防止事件到达除此对象外的其他任何对象
stopImmediatePropagation:即阻止事件到达任何除此之外的任何对象,也阻止事件到达除当前事件监听器外的任何事件监听器。
bubble:决定使用捕获模型还是冒泡模型,值为false为冒泡模型。
cancelable:若为true,表示事件派发期间的某些操作可以使用preventDefault取消。
preventDefault:如果在cancelable为true时调用,则可以取消事件派发中的某些操作。
defaultPrevented:如果cancelable为true时调用了preventDefault则返回true,否则返回false
isTrusted:如果事件由用户代理调度,则返回true,否则返回false。
timeStamp:返回事件的创建的时间。
 
//-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 
图片 
IE中: 
document.body.clientWidth ==> BODY对象宽度 
document.body.clientHeight ==> BODY对象高度 
document.documentElement.clientWidth ==> 可见区域宽度 
document.documentElement.clientHeight ==> 可见区域高度 
FireFox中: 
document.body.clientWidth ==> BODY对象宽度 
document.body.clientHeight ==> BODY对象高度 
document.documentElement.clientWidth ==> 可见区域宽度 
document.documentElement.clientHeight ==> 可见区域高度 
Opera中: 
document.body.clientWidth ==> 可见区域宽度 
document.body.clientHeight ==> 可见区域高度 
document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽) 
document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高) 
没有定义W3C的标准,则 
IE为: 
document.documentElement.clientWidth ==> 0 
document.documentElement.clientHeight ==> 0 
FireFox为: 
document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽) 
document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高) 
Opera为: 
document.documentElement.clientWidth ==> 页面对象宽度(即BODY对象宽度加上Margin宽) 
document.documentElement.clientHeight ==> 页面对象高度(即BODY对象高度加上Margin高) 


网页可见区域宽: document.body.clientWidth 
网页可见区域高: document.body.clientHeight 
网页可见区域宽: document.body.offsetWidth (包括边线的宽) 
网页可见区域高: document.body.offsetHeight (包括边线的高) 
网页正文全文宽: document.body.scrollWidth 
网页正文全文高: document.body.scrollHeight 
网页被卷去的高: document.body.scrollTop 
网页被卷去的左: document.body.scrollLeft 
网页正文部分上: window.screenTop 
网页正文部分左: window.screenLeft 
屏幕分辨率的高: window.screen.height 
屏幕分辨率的宽: window.screen.width 
屏幕可用工作区高度: window.screen.availHeight 
屏幕可用工作区宽度: window.screen.availWidth 

HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth 
scrollHeight: 获取对象的滚动高度。 
scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离 
scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离 
scrollWidth:获取对象的滚动宽度 
offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度 
offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置 
offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置 
event.clientX 相对文档的水平座标 
event.clientY 相对文档的垂直座标 
event.offsetX 相对容器的水平坐标 
event.offsetY 相对容器的垂直坐标 
document.documentElement.scrollTop 垂直方向滚动的值 
event.clientX+document.documentElement.scrollTop 相对文档的水平座标+垂直方向滚动的量 
 
 
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 
鼠标事件
window.onload = function(){
           //去掉默认的contextmenu事件,否则会和右键事件同时出现。
           document.oncontextmenu = function(e){
               e.preventDefault();
           };
           document.getElementById("test").onmousedown = function(e){
               if(e.button ==2){
                   alert("你点了右键");
               }else if(e.button ==0){
                   alert("你点了左键");
               }else if(e.button ==1){
                   alert("你点了滚轮");
               }
           }
       }
原文地址:https://www.cnblogs.com/yunzhexiaye/p/6340730.html