JavaScript之DOM的三大事件及事件模型

DOM的三大事件 :1.鼠标事件
2.键盘事件
3.HTML事件

1.鼠标事件
click :单击 dblclick :双击
mousedown:按下鼠标 mousepress:按下到松开鼠标的过程
mouseup :松开鼠标
mouseove:鼠标移到什么上 mouseout:鼠标从哪移开
mousemove:移动鼠标
mouseenter:鼠标进入 mouseleave:鼠标离开

<body>
<button onclick ="myClick()">单击显示内容</button>
<button ondblclick ="myDBclick()">双击显示内容</button>
<button onmousedown ="myMousedown()" onmouseup ="myMouseup()">按下和松开鼠标显示内容</button>
<button onmouseover ="myMouseover()" onmouseout ="myMouseout()">移到和移开button上显示内容</button>
<button onmousemove ="myMousemove()">移动鼠标显示内容</button>
<button onmouseente r ="myMouseEnter()" onmouseleave ="myMouseLeave()">鼠标进入和离开</button>
</body>
<script>
function myClick() {
console.log("你单击了按钮");
}
function myDBclick() {
console.log("你双击了按钮");
}
function myMousedown() {
console.log("你按下了鼠标");
}
function myMouseup() {
console.log("你松开了了鼠标");
}
function myMouseover() {
console.log("你把鼠标移到了按钮上");
}
function myMouseout() {
console.log("你移开了鼠标");
}
function myMousemove() {
console.log("你移动了鼠标");
}
function myMouseEnter() {
console.log("鼠标进入!")
}
function myMouseLeave() {
console.log("鼠标离开!")
}
</script>

2.键盘事件
keydown:按下键盘 mousepress:按下到松开按键的过程 keyup:松开按键

(1)将输入的小写字母转化为大写字母
<body>
<input id="name" type="text" onkeydown ="myKeyDown( this.id) "
onkeyup ="myKeyUp( this.id) ">
</body>
<script>
/*输出输入的字符*/
function myKeyDown(id) {
console.log(document.getElementById(id).value);
}
/*按键结束,字体转换为大写*/
function myKeyUp(id) {
var text = document.getElementById(id).value;
document.getElementById(id).value = text.toUpperCase();
}

(2)根据键盘按键数字代码如何转化为按键实际意义区分浏览器
/* onkeydown:不区分大小写 */
document.onkeydown = function (event) {
var code = 0;
if( window.event ){
code = event.keyCode; /*IE chrome*/
}else {
code = event.which; /*W3c标准* /
}
if(code == 37){
console.log("左键")
}else if(code == 38){
console.log("上键")
}else if(code == 39){
console.log("右键")
}else if(code == 40){
console.log("下键")
}
console.log(event.keyCode);
}
/* onkeypress :区分大小写 */
window.onkeypress = function (event) {
console.log(event.keyCode)
}
</script>

3.HTML事件

load : 文档加载完毕 Select :选择文本内容 Change :改变内容
Focus :获得光标 resize :网页窗口变化 scroll : 滚动条滚动
<div style="height: 5000px">
<input id="name" type="text" οnselect="mySelect(this.id)">
<input id="name2" type="text" οnchange="myChange(this.id)">
<input id="name3" type="text" οnfοcus="myFocus(this.id)">
</div>
</body>
<script>
window.onload = function () {
console.log("文档加载完毕!");
};
function mySelect(id) {
var text = document.getElementById(id).value;
console.log(text);
}
function myChange(id) {
var text = document.getElementById(id).value;
console.log(text);
}
function myFocus() {
console.log("获得光标")
}
window.onresize = function () {
console.log("窗口变化!")
}
window.onscroll = function () {
console.log("滚动条滚动")
}
</script>

DOM之事件模型:脚本模型
内联模型
动态绑定

<body>
<!--行内绑定:脚本模型-->
<button οnclick="javascrpt:alert('Hello')" >Hello1</button>
<!--内联模型-->
<button οnclick="showHello()" >Hello2</button>
<!--动态绑定-->
<button id="btn3" >Hello3</button>
</body>
<script>
/* DOM0:同一个元素,同类事件只能添加一个,如果添加多个,
* 后面添加的会覆盖之前添加的 */
function shoeHello() {
alert("Hello");
}
var btn3 = document.getElementById("btn3");
btn3.onclick = function () {
alert("Hello");
}
/* DOM2:可以给同一个元素添加多个同类事件* /
btn3.addEventListener("click",function () {
alert("hello1");
});
btn3.addEventListener("click",function () {
alert("hello2");
})
if (btn3.attachEvent){
/*IE*/
btn3.attachEvent("onclick",function () {
alert("IE Hello1");
})
}else {
/*W3C*/
btn3.addEventListener("click",function () {
alert("W3C Hello");
})
}
</script>


  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值