博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Js-三大事件(鼠标事件、键盘事件、html事件)
阅读量:2342 次
发布时间:2019-05-10

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

鼠标事件
click:单击
dblclick:双击
mousedown:鼠标按下
mouseup:鼠标抬起
mouseover:鼠标悬浮
mouseout:鼠标离开
mousemove:鼠标移动
mouseenter:鼠标进入
mouseleave:鼠标离开
[html]
  1. <button onclick="myClick()">鼠标单击</button>  
  2. <button ondblclick="myDBClick()">鼠标双击</button>  
  3. <button onmousedown="myMouseDown()" onmouseup="myMouseUp()">鼠标按下和抬起</button>  
  4. <button onmouseover="myMouseOver()" onmouseout="myMouseOut()">鼠标悬浮和离开</button>  
  5. <button onmousemove="myMouseMove()">鼠标移动</button>  
  6. <button onmouseenter="myMouseEnter()" onmouseleave="myMouseLeave()">鼠标进入和离开</button>  
[html]
  1. <script>  
  2.     function myClick() {  
  3.         console.log("你单击了按钮!");  
  4.     }  
  5.     function myDBClick() {  
  6.         console.log("你双击了按钮!");  
  7.     }  
  8.     function myMouseDown() {  
  9.         console.log("鼠标按下了!");  
  10.     }  
  11.     function myMouseUp() {  
  12.         console.log("鼠标抬起了!");  
  13.     }  
  14.     function myMouseOver() {  
  15.         console.log("鼠标悬浮!");  
  16.     }  
  17.     function myMouseOut() {  
  18.         console.log("鼠标离开!")  
  19.     }  
  20.     function myMouseMove() {  
  21.         console.log("鼠标移动!")  
  22.     }  
  23.     function myMouseEnter() {  
  24.         console.log("鼠标进入!")  
  25.     }  
  26.     function myMouseLeave() {  
  27.         console.log("鼠标离开!")  
  28.     }  
键盘事件
keydown:按键按下
keyup:按键抬起
keypress:按键按下抬起
[html]
  1. <body>  
  2. <input id="name" type="text" onkeydown="myKeyDown(this.id)" onkeyup="myKeyUp(this.id)">  
  3. </body>  
[javascript]
  1. <script>  
  2.     /*输出输入的字符*/  
  3.     function myKeyDown(id) {  
  4.         console.log(document.getElementById(id).value);  
  5.     }  
  6.     /*按键结束,字体转换为大写*/  
  7.     function myKeyUp(id) {  
  8.         var text = document.getElementById(id).value;  
  9.         document.getElementById(id).value = text.toUpperCase();  
  10.     }  
  11. </script>  
HTML事件
load:文档加载完成
select:被选中的时候
change:内容被改变
focus:得到光标
resize:窗口尺寸变化
scroll:滚动条移动
[html]
  1. <body onload="loaded()">  
  2. <div style="height: 3000px" ></div>  
  3. <input type="text" id="name" onselect="mySelect(this.id)">  
  4. <input type="text" id="name2" onchange="myChange(this.id)">  
  5. <input type="text" id="name3" onfocus="myFocus()">  
  6. </body>  
[html]
  1. <script>  
  2.     window.onload = function () {  
  3.         console.log("文档加载完毕!");  
  4.     };  
  5.     /*window.onunload = function () {  
  6.      alert("文档被关闭!");  
  7.      };*/  
  8.     /*打印选中的文本*/  
  9.     function mySelect(id) {  
  10.         var text = document.getElementById(id).value;  
  11.         console.log(text);  
  12.     }  
  13.     /*内容被改变时*/  
  14.     function myChange(id) {  
  15.         var text = document.getElementById(id).value;  
  16.         console.log(text);  
  17.     }  
  18.     /*得到光标*/  
  19.     function myFocus() {  
  20.         console.log("得到光标!");  
  21.     }  
  22.     /*窗口尺寸变化*/  
  23.     window.onresize = function () {  
  24.         console.log("窗口变化!")  
  25.     };  
  26.     /*滚动条移动*/  
  27.     window.onscroll = function () {  
  28.         console.log("滚动");  
  29.     }  
  30. </script>  
事件模型:
[html]
  1. <body>  
  2. <!--脚本模型:行内绑定-->  
  3. <button onclick="alert('hello')">hello</button>  
  4. <!--内联模型-->  
  5. <button onclick="showHello()">hello2</button>  
  6. <!--动态绑定-->  
  7. <button id="btn">hello3</button>  
  8. </body>  
[html]
  1. <script>  
  2.     function showHello() {  
  3.         alert("hello");  
  4.     }  
  5.     /*DOM0:同一个元素只能添加一个同类事件  
  6.      * 如果添加多个,后面的会把前面的覆盖掉*/  
  7.     var btn = document.getElementById("btn");  
  8.     btn.onclick = function () {  
  9.         alert("hello");  
  10.     };  
  11.     btn.onclick = function () {  
  12.         alert("hello world");  
  13.     };  
  14.     /*DOM2:可以给一个元素添加多个同类事件*/  
  15.     btn.addEventListener("click", function () {  
  16.         alert("hello1");  
  17.     });  
  18.     btn.addEventListener("click", function () {  
  19.         alert("hello2");  
  20.     });  
  21.     /*不同浏览器的兼容写法*/  
  22.     /*IE*/  
  23.     if (btn.attachEvent) {  
  24.         btn.attachEvent("onclick", function () {  
  25.             alert("hello3");  
  26.         });  
  27.     /*W3C*/  
  28.     } else {  
  29.         btn.addEventListener("click", function () {  
  30.             alert("hello4");  
  31.         })  
  32.     }  
  33. </script>  
事件冒泡与事件捕获:
[css]
  1. <style>  
  2.        #div1{  
  3.            width400px;  
  4.            height400px;  
  5.            background-color#0dfaff;  
  6.        }  
  7.        #div2{  
  8.            width300px;  
  9.            height300px;  
  10.            background-color#33ff66;  
  11.        }  
  12.        #div3{  
  13.            width200px;  
  14.            height200px;  
  15.            background-color#fff24a;  
  16.        }  
  17.        #div4{  
  18.            width100px;  
  19.            height100px;  
  20.            background-color#ff4968;  
  21.        }  
  22.    </style>  
[html]
  1.  <title>事件冒泡、事件捕获</title>  
  2. </head>  
  3. <body>  
  4. <div id="div1">  
  5.     <div id="div2">  
  6.         <div id="div3">  
  7.             <div id="div4">  
  8.   
  9.             </div>  
  10.         </div>  
  11.     </div>  
  12. </div>  
  13. </body>  
[html]
  1. <script>  
  2.     var div1 = document.getElementById("div1");  
  3.     div1.addEventListener("click",function (event) {  
  4.         /*阻止事件冒泡*/  
  5.         event.stopPropagation();  
  6.         alert("div1");  
  7.     },false);  
  8.     var div2 = document.getElementById("div2");  
  9.     div2.addEventListener("click",function (event) {  
  10.         /*阻止事件冒泡*/  
  11.         event.stopPropagation();  
  12.         alert("div2");  
  13.     },false);  
  14.     var div3 = document.getElementById("div3");  
  15.     div3.addEventListener("click",function (event) {  
  16.         /*阻止事件冒泡*/  
  17.         event.stopPropagation();  
  18.         alert("div3");  
  19.     },false);  
  20.     var div4 = document.getElementById("div4");  
  21.     div4.addEventListener("click",function (event) {  
  22.         /*阻止事件冒泡*/  
  23.         event.stopPropagation();  
  24.         alert("div4");  
  25.     },false);  
  26. </script>  
阻止默认事件:
[html]
  1. <body>  
  2. <a href="http://www.baidu.com" onclick="stop(event)">百度</a>  
  3. </body>  
[html]
  1. <script>  
  2.     function stop(event) {  
  3.         if (event.preventDefault()) {  
  4.             event.preventDefault();  
  5.         } else {  
  6.             event.returnValue = false;  
  7.         }  
  8.         alert("不跳转!")  
  9.     }  
  10. </script>  
版权声明:本文为博主原创文章,如有错误,欢迎指正,欢迎转载! https://blog.csdn.net/qwer_df_b/article/details/77509859
你可能感兴趣的文章
【计算机视觉】opencv靶标相机姿态解算2 根据四个特征点估计相机姿态 及 实时位姿估计与三维重建相机姿态
查看>>
关于OpenNI2和OpenCV2的那些事——获取三维点云数据并用OpenGL表示
查看>>
一起做RGB-D SLAM (6)
查看>>
利用matlab摄像机标定
查看>>
Ubuntu下安装Matlab并破解
查看>>
camodocal 编译依赖库的问题
查看>>
c/c++: c++函数返回类型什么情况带const
查看>>
const引用返回值
查看>>
三维坐标变换——旋转矩阵与旋转向量
查看>>
视觉里程计设计与实现
查看>>
视觉里程计研究小结
查看>>
vo类总结
查看>>
solvepnp三维位姿估算
查看>>
旋转矩阵、欧拉角、四元数理论及其转换关系
查看>>
机器人笛卡尔空间坐标系轨迹规划的研究
查看>>
视觉SLAM——第三章 Eigen几何模块Geometry使用 四元素 欧式变换矩阵
查看>>
半闲居士视觉SLAM十四讲笔记(3)三维空间刚体运动 - part 5 Eigen_Geometry、Pangolin安装
查看>>
程序员的绘图利器 — Gnuplot
查看>>
Ubuntu14.04中安装gnuplot
查看>>
gnuplot 命令解析
查看>>