博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS C23 事件
阅读量:3958 次
发布时间:2019-05-24

本文共 2019 字,大约阅读时间需要 6 分钟。

1,

事件无大驼峰或者小驼峰的规则,单词直接拼接。

 

(1)mouseenter(over)与mouseleave(out)

var div = document.getElementsByTagName('div')[0];    div.onmouseenter = function (){        div.style.background = 'yellow';    }    div.onmouseleave = function(){        div.style.background = 'green';    }相当于hover

(2)监听鼠标左右键

document.onmousedown = function(e){        if(e.button == 0){            console.log('点击的是左键');        }else if(e.button == 2){            console.log('点击的是右键');        }else{            console.log('滑动滚轮')        }    }

(3)利用时间差解决mousedown和click的冲突:

var firstTime = 0;     var lastTime = 0;     var key = false;     document.onmousedown = function (){         firstTime = new Date().getTime();     }     document.onmouseup = function(){         lastTime = new Date().getTime();         if(lastTime - firstTime < 300){             key = true;         }     }     document.onclick = function(){         if (key){             console.log('click');             key = false;         }     }

 

2,

(1)

document.onkeydown = function (e){        console.log(e);    }    document.onkeypress = function (e){        console.log(e);    }

转换为响应字符:

document.onkeypress = function (e){        console.log(e.charCode);        console.log(String.fromCharCode(e.charCode))    }

 

3,

 

(1)input:有输入或者退格有改变都会触发

var input = document.getElementsByTagName('input')[0];    input.oninput = function(e){        console.log(this.value);    }

(2)change:鼠标聚焦和离开时候或者输入框有变化时候,触发

var input = document.getElementsByTagName('input')[0];    input.onchange = function(e){        console.log(this.value);    }
var input = document.getElementsByTagName('input')[0];    input.onfocus = function(e){        if(this.value == '请输入用户名'){            this.value =' ';            this.style.color = '#424242';        }    }    input.onblur = function (e){        if(this.value == ' '){            this.value = '请输入用户名'            this.style.color = '#999';        }    }

4,

window.onscroll = function (){        console.log(window.pageXOffset + " " + window.pageYOffset);    }

5,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:http://hmtzi.baihongyu.com/

你可能感兴趣的文章
一. Maven的安装和配置
查看>>
二. Maven使用入门
查看>>
三. 坐标和依赖
查看>>
四. 仓库
查看>>
五. 生命周期和插件
查看>>
六. 聚合与继承
查看>>
七. 使用Maven构建Web应用
查看>>
ubuntu12.04 安装mysql
查看>>
远程调用执行Hadoop Map/Reduce
查看>>
八. 灵活的构建
查看>>
keytool+tomcat 单向/双向认证的配置
查看>>
jprofiler8.0.1 监控Tomcat
查看>>
VMWare10 CentOS 6.5 Oracle11g安装笔记
查看>>
maven管理项目中使用wsgen&wsimport
查看>>
基于WSDL契约优先的web services服务器端和客户端开发方式
查看>>
spring-data-jpa通过Atomikos实现JTA事务
查看>>
简单的Spring整合Shiro
查看>>
yale-cas服务器端深度定制
查看>>
yale-cas 与 shiro进行整合
查看>>
JAVA EE 5 - 7 整理
查看>>