• JS常用事件,使用方法


    一、事件:

    加载事件:

    1. load:页面或图像加载完毕

    焦点事件:

    1. focus:获得焦点
    2. blur:失去焦点

    键盘事件

    1. keydown:键盘按下
    2. keyup:键盘弹起
    3. keypress:某个键盘按键被按下并松开

    点击事件:

    1. click:鼠标单击
    2. dbclick:鼠标双击

    鼠标事件

    1. mouseover(mouseenter):鼠标移入该元素
    2. mouseout(mouseleave):鼠标移出该元素
    3. mousedown:鼠标按下
    4. mouseup:鼠标弹起
    5. mousemove:鼠标移动

    表单事件:

    1. reset:表单重置
    2. submit:表单提交

    内容被选择或改变:

    1. select:文本被选中
    2. change:下拉列表选中项改变,或文本框内容改变

    注意:任何一个事件都会对应一个事件句柄叫做:onclick ,以属性方式存在。

    二、注册事件的方式:

    • 第一种方式:直接在标签中使用事件句柄
    <script type="text/javascript">
    	function dosome(){
    		alert("hello");
    	}
    script>
    <input type="button" value="hello1" onclick="sayhello()"/>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 第二种方式:使用纯JS代码
      • 第一步:获取按钮对象。
      • 第二步:给按钮对象的onclick属性赋值。 只要对象中有的属性都可以通过.赋值。
    <input type="button" value="hello1" id="m1"/>
    <script type="text/javascript">
    	function dosome(){
    		alert("hello");
    	}
    	第一步:
    	var bt1 = document.getElementById("m1");document是个内置对象,代表整个HTML页面
    	第二步:
    	bt1.onclick = dosome;注意函数名不加小括号
    
    	简写为: 
    	document.getElementById("m1").onclick = function(){
    		alert("hello");
    	}
    script>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 第三种方式:使用纯JS代码,并使用load事件
    如果input标签的创建位于document.getElementById("m1")执行之后,因为还没有创建m1标签,所以会报错,解决方法是:使用onload事件
    <script type="text/javascript">
    	window.onload = a;//这行代码规定了整个页面加载完毕后才能执行回调函数a,防止过早获取m1对象导致找不到对象报错的情况
    	function a(){
    		document.getElementById("m1").onclick = function(){
    			alert("hello");
    		}
    	}
    简写为:
    	window.onload = function(){
    		document.getElementById("m1").onclick = function(){
    			alert("hello");
    		}
    	}
    script>
    <input type="button" value="hello1" id="m1"/>//位于JS代码块之后
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
  • 相关阅读:
    Prompt 编程的优化技巧
    【HCIP】高级 VLAN
    Leetcode 76. 最小覆盖子串
    python解CCF-CSP真题《202206-1—归一化处理》
    使用UiPath和AA构建的解决方案 3. CRM 自动化
    STM32 FreeRTOS 内存问题
    day59 单调栈.p2
    Pytorch因nn.Parameter导致实验不可复现的一种情况
    xshell与xftp安装和使用
    Oracle 的LogMiner
  • 原文地址:https://blog.csdn.net/m0_53881899/article/details/126621067