当前位置: 首页> 财经> 产业 > 免费打广告的平台app_网站搭建供应商_网站seo优化皆宣徐州百都网络不错_seo推广网址

免费打广告的平台app_网站搭建供应商_网站seo优化皆宣徐州百都网络不错_seo推广网址

时间:2025/7/9 10:52:58来源:https://blog.csdn.net/gege_0606/article/details/142109011 浏览次数:0次
免费打广告的平台app_网站搭建供应商_网站seo优化皆宣徐州百都网络不错_seo推广网址

什么是事件?

ITML事件可以是浏览器行为,也可以是用户行为。 当这些一些行为发生时,可以自动触发对应的JS函数的运行,我们称之为事件的驱动,指的就是行为触发代码运行的这种特点

如何绑定事件?

1. 通过元素的属性绑定On***进行绑定

注意事项:

1 一个事件可以同时绑定多个函数

2 一个元素可以同时绑定多个事件

<!DOCTYPE html>
<html lang="">
<head><meta charset="UTF-8"><title>Title</title><script>fun1 = function () {console.log("单击了一下");}fun2 = function () {console.log("单击了一下2");}fun3 = function () {console.log("双击了一下");}</script>
</head>
<body>
<inputtype = "button"value="按钮"onclick="fun1(),fun2()"ondblclick="fun3()"
>
</body>
</html>

2.通过DOM编程动态绑定

页面加载事件:

页面加载事件使用 window.onload,它在整个页面及其所有资源(如图片、样式表、脚本等)完全加载完毕时触发

window.onload = function() {console.log('The entire page and all resources are fully loaded');
};

例子:

<!DOCTYPE html>
<html lang="">
<head><meta charset="UTF-8"><title>Title</title><script>window.onload = function (){var btn = document.getElementById("button");btn.onclick = function () {alert("按钮单击了")}}</script>
</head>
<body>
<inputtype = "button"value="按钮"id = "button"
>
</body>
</html>
  • btn.onclick:是直接将一个匿名函数赋值给按钮元素的 onclick 属性。这是事件处理程序的简化形式,当用户点击按钮时,浏览器会检测 onclick 属性中是否有函数,如果有,就会执行该函数。
  • 不需要额外的监听器:由于 onclick 是按钮 DOM 元素内置的属性,浏览器已经“知道”它是一个事件处理函数。你只需要赋值给它一个函数即可,而不需要明确地告诉浏览器“监听”这个事件。

onclickaddEventListener 的选择:

  • 如果你只需要简单的事件处理,并且不需要为同一个事件绑定多个函数,onclick 是一种非常简单且方便的方式。
  • 如果你需要为一个元素绑定多个事件处理函数,或者希望更灵活地控制事件绑定(如捕获阶段或冒泡阶段),则推荐使用 addEventListener

 如何通过 DOM 编程绑定事件,并且如何通过程序手动触发一个元素的事件:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>DOM Event Trigger Example</title><script>window.onload = function () {// 获取 div1 元素var div1 = document.getElementById("d1");// 为 div1 绑定单击事件div1.onclick = function () {div1.style.backgroundColor = "red"; // 点击时背景变红};// 获取按钮元素var btn = document.getElementById("btn1");// 为按钮绑定单击事件btn.onclick = function () {alert("按钮单击了!"); // 弹出提示// 通过 DOM 编程触发 div1 的单击事件div1.onclick(); // 模拟点击 div1};};</script>
</head>
<body><!-- 这是一个 div 元素,初始背景颜色为默认值 --><div id="d1" style="width: 100px; height: 100px; border: 1px solid black;">点击我</div><!-- 这是一个按钮,点击后会触发 div1 的点击事件 --><br><input type="button" value="按钮" id="btn1">
</body>
</html>

  更多详细关于DOM编程,点击:

常见的事件:

1.鼠标事件:

1.1 click

当用户点击某个元素时触发(鼠标按下并释放)。

element.addEventListener('click', function() { console.log('Element clicked'); 
});
1.2 dblclick

当用户双击某个元素时触发。

element.addEventListener('dblclick', function() {console.log('Element double-clicked'); 
});

1.3 mouseover

当鼠标指针进入元素范围时触发(包括子元素)。

element.addEventListener('mouseover', function() {console.log('Mouse entered element'); 
});

1.4 mouseleave

当鼠标指针离开元素时触发(不包括子元素)。与 mouseout 的区别是 mouseleave 不会冒泡。

element.addEventListener('mouseleave', function() {console.log('Mouse left element (no bubble)'); 
});
1.5 mousemove

当鼠标在元素范围内移动时持续触发。

element.addEventListener('mousemove', function() { console.log('Mouse is moving over element');
});

2.键盘事件

1. onkeydown 事件

onkeydown 事件在用户按下键盘按键时触发,无论是字符键还是功能键(如 ShiftCtrl、方向键等)。按住某个键不放会持续触发此事件。

语法:
element.onkeydown = function(event) { // 事件处理逻辑 };

或者使用 addEventListener 动态绑定:

element.addEventListener('keydown', function(event) { // 事件处理逻辑 });
示例:
<input type="text" id="inputField" placeholder="Type something..."><script>document.getElementById('inputField').onkeydown = function(event) {console.log('Key down:', event.key);};
</script>

2. onkeyup 事件

onkeyup 事件在用户释放键盘按键时触发,也就是说,当用户松开某个键时会触发该事件。

语法:
element.onkeyup = function(event) { // 事件处理逻辑 };

或者使用 addEventListener 动态绑定:

element.addEventListener('keyup', function(event) { // 事件处理逻辑 });
示例:
<input type="text" id="inputField" placeholder="Type something..."><script>document.getElementById('inputField').onkeydown = function(event) {console.log('Key down:', event.key);};
</script>

在这个例子中,当用户松开按键时,onkeyup 事件会触发,并打印出松开的按键。

3. onkeydownonkeyup 的区别

特性onkeydownonkeyup
触发时机键按下时触发键松开时触发
事件频率持续按住键时会重复触发仅在键松开时触发
常见用途检测用户开始按键的动作检测用户结束按键的动作

3.表单事件

1.1 onfocusonblur
  • onfocus:当元素获得焦点时触发(如用户点击输入框)。
  • onblur:当元素失去焦点时触发(如用户点击其他地方)。
    <input type="text" id="username" placeholder="Enter username"><script>let inputField = document.getElementById('username');inputField.onfocus = function() {console.log('Input field focused');};inputField.onblur = function() {console.log('Input field blurred');};
    </script>
    

1.2 onchange

当用户修改了表单元素的值,并在失去焦点后,onchange 事件触发。常用于 <input><select><textarea> 等元素。

<select id="country"><option value="usa">USA</option><option value="canada">Canada</option>
</select><script>document.getElementById('country').onchange = function(event) {console.log('Selected value:', event.target.value);};
</script>
1.3 onsubmit

当用户提交表单时,onsubmit 事件触发。此事件可以用于验证表单输入,或者阻止表单提交。

<form id="myForm"><input type="text" id="username" placeholder="Enter username"><button type="submit">Submit</button>
</form><script>document.getElementById('myForm').onsubmit = function(event) {event.preventDefault(); // 阻止默认的表单提交console.log('Form submitted, but prevented');};
</script>
1.4 onreset

当表单被重置时,onreset 事件触发。通常与表单的 <button type="reset">reset() 方法相关联。

<form id="myForm"><input type="text" id="username" placeholder="Enter username"><button type="reset">Reset</button>
</form><script>document.getElementById('myForm').onreset = function() {console.log('Form reset');};
</script>

总体例子:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script>function testOnfocus() {console.log("获得焦点了");}function testOnblur() {console.log("失去焦点了");}function testChange(value) {console.log("内容发生改变了:" + value);}function testSubmit(event) {var flag = confirm("确定要提交吗");if (!flag) {event.preventDefault(); // 阻止表单提交}}</script>
</head>
<body>
<form action="../indix.html" method="get" onsubmit="testSubmit(event)">用户名:<inputtype="text" name="realName"onfocus="testOnfocus()"onblur="testOnblur()"onchange="testChange(this.value)"><br>登录账号:<input type="text" name="username"><br><input type="submit" value="注册"><input type="reset" value="清空">
</form>
</body>
</html>

关键字:免费打广告的平台app_网站搭建供应商_网站seo优化皆宣徐州百都网络不错_seo推广网址

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: