当前位置: 首页 > wzjs >正文

北京昨天出啥大事了百度首页排名优化服务

北京昨天出啥大事了,百度首页排名优化服务,深圳律师网站建设,群晖wordpress事件监听 ✅ 事件监听的基本语法 element.addEventListener(event, function, useCapture);element:目标元素。 event:事件类型,如 ‘click’、‘mouseover’、‘keydown’ 等。 function:事件发生时执行的回调函数。 useCap…

事件监听

✅ 事件监听的基本语法

element.addEventListener(event, function, useCapture);

element:目标元素。

event:事件类型,如 ‘click’、‘mouseover’、‘keydown’ 等。

function:事件发生时执行的回调函数。

useCapture (可选):true 表示在捕获阶段触发事件,false 表示在冒泡阶段触发事件(默认)。

🧑‍💻 示例 1:点击事件

<button id="myButton">点击我</button><script>let button = document.getElementById('myButton');button.addEventListener('click', function() {alert('你点击了按钮!');});
</script>

✅ 解释:

当你点击按钮时,事件监听器会捕捉到 ‘click’ 事件并执行弹窗。

🧑‍💻 示例 2:鼠标移入事件

<div id="box" style="width:200px;height:200px;background-color:lightblue;">移入我看看
</div><script>let box = document.getElementById('box');box.addEventListener('mouseover', function() {box.style.backgroundColor = 'lightcoral';});box.addEventListener('mouseout', function() {box.style.backgroundColor = 'lightblue';});
</script>

✅ 解释:

鼠标移入 mouseover 时,背景颜色变红。

鼠标移出 mouseout 时,背景颜色恢复。

✅ 事件冒泡和事件捕获
事件冒泡:事件从目标元素开始,逐层向父级元素冒泡传递。

事件捕获:事件从最顶层的父元素开始,逐层向目标元素传递。

document.body.addEventListener('click', function() {console.log('body被点击了');
}, true); // 使用事件捕获document.getElementById('myButton').addEventListener('click', function() {console.log('按钮被点击了');
}, false); // 使用事件冒泡

✅ 解释:

如果 true,事件在捕获阶段执行。

如果 false,事件在冒泡阶段执行(默认)。

✅ 常见事件类型
鼠标事件:click、dblclick、mousedown、mouseup、mousemove

键盘事件:keydown、keyup、keypress

表单事件:submit、change、input、focus

窗口事件:resize、scroll、load、unload

e.preventDefault();

e.preventDefault(); 是 JavaScript 中阻止事件的默认行为的方法。它常用于表单、链接、按钮等事件处理中。

✅ 语法

element.addEventListener('event', function(e) {e.preventDefault();
});

e:事件对象,代表事件的详细信息。

preventDefault():阻止事件的默认行为。

✅ 实际应用场景

  1. 阻止链接跳转
document.querySelector('a').addEventListener('click', function(e) {e.preventDefault();console.log('链接被点击,但没有跳转');
});

场景: 链接点击后需要执行其他操作,而不是跳转到链接地址。

  1. 阻止表单提交
document.querySelector('form').addEventListener('submit', function(e) {e.preventDefault();console.log('表单提交已阻止');
});

场景: 在表单验证失败时阻止提交。

  1. 阻止右键菜单
document.addEventListener('contextmenu', function(e) {e.preventDefault();console.log('右键菜单已被阻止');
});

场景: 实现自定义右键菜单。

✅ 注意事项
preventDefault() 只阻止默认行为,不影响事件的传播。

如果要阻止事件冒泡,需要使用 e.stopPropagation()。

某些情况下,preventDefault() 无法生效,例如:

在 disabled 的按钮上点击。

在某些系统级别的浏览器操作中(如 F5 刷新)。

e.stopPropagation()

事件冒泡 是指当一个元素上的事件被触发时,事件会从目标元素向它的祖先元素逐级传播,直到到达 document 根节点的过程。

e.stopPropagation() 可以阻止事件向上冒泡,防止事件传播到父级元素。

✅ 事件冒泡的示意图
假设有以下 HTML 结构:

<div id="grandparent"><div id="parent"><button id="child">点击我</button></div>
</div>

如果在每个元素上都绑定了 click 事件:

document.getElementById('grandparent').addEventListener('click', function() {console.log('祖父元素被点击');
});document.getElementById('parent').addEventListener('click', function() {console.log('父元素被点击');
});document.getElementById('child').addEventListener('click', function() {console.log('子元素被点击');
});
点击按钮后的结果:

子元素被点击
父元素被点击
祖父元素被点击
这就是事件冒泡的过程:事件从子元素向上层父级依次触发。

✅ 阻止事件冒泡
使用 e.stopPropagation() 可以阻止事件继续向上传播。

document.getElementById('child').addEventListener('click', function(e) {console.log('子元素被点击');e.stopPropagation(); // 阻止事件冒泡
});

点击按钮后的结果:

子元素被点击
父元素和祖父元素的事件不再触发。

✅ 应用场景

  1. 模态框中的事件阻止冒泡
    在弹窗中点击关闭按钮时,可能不希望点击事件冒泡到背景导致弹窗关闭:
document.getElementById('modal').addEventListener('click', function() {console.log('关闭弹窗');
});document.getElementById('close-btn').addEventListener('click', function(e) {console.log('点击了关闭按钮');e.stopPropagation();
});

点击关闭按钮时只会输出 “点击了关闭按钮”,不会触发背景的关闭事件。

  1. 阻止导航栏中的事件冒泡
    在下拉菜单点击时,不希望触发外部 document 的点击事件:
document.getElementById('dropdown').addEventListener('click', function(e) {console.log('点击了下拉菜单');e.stopPropagation();
});document.addEventListener('click', function() {console.log('关闭下拉菜单');
});
  • 点击菜单时不会关闭菜单,只有点击菜单外部时才会触发关闭逻辑。
http://www.dtcms.com/wzjs/143028.html

相关文章:

  • 郑州网站 建设网站优化排名易下拉霸屏
  • 天津做网站比较好的公司seo关键字怎么优化
  • 南京营销型网站建设中国企业100强
  • 沈阳个人网站建设名站在线
  • 给你一个网站你如何做优化如何制作一个网页网站
  • 优秀国外网站设计赏析优化seo方案
  • 网站搭建完手机访问百度网盘搜索引擎入口哪里
  • 网站建设合作流程图国家免费技能培训官网
  • ip域名查询网seo下载站
  • 简单做网站怎样推广自己的店铺啊
  • 用自己服务器做网站用备案北京优化推广
  • 快手网站题怎么做优化网站推广教程排名
  • 草图网站郑州网站优化公司
  • 网站制作详细报价表网站制作费用多少
  • laravel网站怎么做项目wifi优化大师下载
  • 无锡网站制作优化推广公司贵港seo关键词整站优化
  • 微信开放平台与个人网站怎么seo运营培训
  • 萧山做网站的企业seo外包服务公司
  • 做网站需要什么编程语言网上的推广公司
  • 个人网站可以做论坛吗新手如何涨1000粉
  • 黄石网站建设流程手机建网站软件
  • 日照建站外包软文营销经典案例
  • 海口有做棋牌娱乐网站的吗什么是百度竞价排名服务
  • 购物网站怎么做优化如何进行百度推广
  • 庆网站建设十大嵌入式培训机构
  • 做程序任务发布的网站郑州做网站推广
  • 自己公司网站自己能做吗网站推广的方式有哪些
  • 网站广告招商应该怎么做外链优化
  • 服装个性化定制平台长沙seo培训班
  • 网站设计收费标准成都seo服务