JS event如何使用

JavaScript中的事件(event)是用户与浏览器交互的一种方式,它允许开发者在特定时刻对网页进行操作,事件可以分为两种类型:鼠标事件和键盘事件,本文将详细介绍如何使用JavaScript的事件处理机制。

什么是事件

事件是用户与浏览器交互的一种方式,例如点击按钮、滚动页面等,当这些事件发生时,浏览器会自动触发相应的事件处理函数,通过编写事件处理函数,我们可以在事件发生时执行特定的操作,例如改变页面内容、发送AJAX请求等。

JS event如何使用

如何创建事件处理函数

要创建一个事件处理函数,首先需要获取到对应的DOM元素,可以通过以下方法之一来实现:

1、通过元素的ID获取:document.getElementById("elementId")

2、通过元素的类名获取:document.getElementsByClassName("className")

3、通过元素的标签名获取:document.getElementsByTagName("tagName")

4、通过CSS选择器获取:document.querySelector("selector")document.querySelectorAll("selector")

获取到元素后,可以使用element.addEventListener()方法为该元素添加事件监听器,为按钮添加点击事件监听器:

var button = document.getElementById("myButton");
button.addEventListener("click", function() {
  alert("按钮被点击了!");
});

常见的事件类型及处理函数

1、click:鼠标点击事件

2、mousedown:鼠标按下事件

3、mouseup:鼠标松开事件

4、mousemove:鼠标移动事件

5、keydown:键盘按下事件

6、keyup:键盘松开事件

7、keypress:键盘按键事件

8、load:页面加载完成事件

9、unload:页面卸载事件

10、scroll:滚动事件

11、resize:窗口大小调整事件

12、change:输入框内容变化事件(如select、input)

13、submit:表单提交事件(如form)

14、reset:表单重置事件(如form)

15、dblclick:双击事件(如img)

16、contextmenu:右键菜单事件(如img)

17、hover:鼠标悬停事件(如a)

18、focus:输入框获得焦点事件(如input)

19、blur:输入框失去焦点事件(如input)

20、selectstart:文本框内容开始被选中事件(如input)

21、cut:剪切事件(如textarea)

22、copy:复制事件(如textarea)

23、paste:粘贴事件(如textarea)

24、beforecopy:复制前事件(如textarea)

25、aftercopy:复制后事件(如textarea)

26、beforecut:剪切前事件(如textarea)

27、aftercut:剪切后事件(如textarea)

28、beforepaste:粘贴前事件(如textarea)

29、afterpaste:粘贴后事件(如textarea)

30、input:键盘输入事件(不区分具体按键类型)

31、compositionstart:输入法编辑开始事件(如input)

32、compositionupdate:输入法编辑更新事件(如input)

33、compositionend:输入法编辑结束事件(如input)

34、animationstart:动画开始事件(如div)

35、animationiteration:动画迭代事件(如div)

36、animationend:动画结束事件(如div)

37、transitionend:过渡结束事件(如div)

38、pointerlockchange:指针锁定状态改变事件(如canvas)

39、pointerlockerror:指针锁定错误事件(如canvas)

40、touchstart:触摸开始事件(如div)

41、touchmove:触摸移动事件(如div)

42、touchend:触摸结束事件(如div)

43、touchcancel:触摸取消事件(如div)

44、wheel:滚轮滚动事件(如div或img)

45、resizeObserverCallback:ResizeObserver回调函数触发时机为“运行时”,即每次ResizeObserver实例中的目标元素尺寸发生变化时都会调用该回调函数,这个回调函数接收四个参数:targethandlerrootTargetarraytarget为目标元素;handler为ResizeObserver实例;rootTarget为观察根目标元素;array为包含所有观察目标的数组,如果不需要观察目标元素的变化,可以将该回调函数设置为空函数,为一个div元素添加滚动条宽度变化的监听器:

var div = document.getElementById("myDiv");
var observer = new ResizeObserver(function(entries) {
  for (var entry of entries) {
    console.log("滚动条宽度变化了,新值为:" + entry.contentRect[this.widthProperty]);
  }
});
observer.observe(div); // 开始观察div元素的大小变化,包括其子元素的大小变化,如果只需要观察div本身的大小变化,可以传入div作为第二个参数,如果不需要观察任何元素的大小变化,可以传入null作为第二个参数,注意,传入null后,ResizeObserver实例将无法继续工作,为了避免内存泄漏,应该在不再需要观察时调用observer.disconnect()方法,当div不再需要观察大小时,调用以下代码断开观察关系: observer

原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/137518.html

(0)
打赏 微信扫一扫 微信扫一扫
K-seo的头像K-seoSEO优化员
上一篇 2023-12-17 16:51
下一篇 2023-12-17 17:00

相关推荐

  • 怎么把js转成html

    在Web开发中,JavaScript和HTML是两种非常重要的技术,JavaScript是一种脚本语言,主要用于实现网页的交互功能,而HTML则是一种标记语言,用于描述网页的结构和内容,我们可能需要将JavaScript代码嵌入到HTML文件中,以实现更复杂的功能,如何将JavaScript代码转换为HTML呢?本文将详细介绍这个过程……

    2024-01-05
    0134
  • html导入js文件代码

    HTML怎么导入JS文件在HTML中,我们可以使用<script>标签来引入外部的JavaScript文件,这样可以让我们将JavaScript代码与HTML代码分离,使得HTML代码更加简洁,同时也便于后期维护,本文将详细介绍如何使用<script>标签导入JavaScript……

    2024-01-11
    0184
  • htmlcssjavascript关系,html怎么和js关联

    大家好呀!今天小编发现了htmlcssjavascript关系的有趣问题,来给大家解答一下,别忘了关注本站哦,现在我们开始阅读吧!网页编程语言html、Ajax、javascript、jQuery、CSS这五者之间有什么联系…1、jquery 是JS的一个框架,JS是网页的脚本语言,AJAX是指一种创建交互式网页应用的网页开发技术。

    2023-12-12
    0142
  • PHP代码嵌入HTML

    欢迎进入本站!本篇文章将分享html代码中嵌入js,总结了几点有关PHP代码嵌入HTML的解释说明,让我们继续往下看吧!HTML如何插入js?1、J首先输入s_file0js,//程序代码 document.write( script language=\javascript\ src=\/com\/ Js_file0js \ \/script)。2、JavaScript代码可以直接包含在与标记之间放置在HTML的任何位置,既可以放在head内,也可以放在body内。具体用法如下:其中URL处填写保存的脚本文件名即可。

    2023-11-20
    0146
  • js缓存问题如何解决

    JavaScript缓存问题简介在前端开发中,JavaScript缓存问题是一个常见的性能优化问题,浏览器会将已经加载过的脚本、样式和图片等资源缓存起来,以便在下次访问时直接从缓存中读取,从而提高页面加载速度,这种缓存机制也可能导致一些问题,如:1. 缓存的资源过期后仍然使用;2. 多个域名共享同一个缓存;3. 动态生成的内容无法实时……

    2024-01-12
    0168
  • html5图片滚动代码

    好久不见,今天给各位带来的是html5图片滚动代码,文章中也会对html图片滚动怎么做进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!谁会html代码,我想让几张相片来回滚动显示怎么办???在html编辑器软件内,新建html页面,(一般我们常使用的两款编辑器是HBuilder和Adobe Dreamweaver,这里我使用的软件是HBuilder)。

    2023-12-04
    0199

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

免备案 高防CDN 无视CC/DDOS攻击 限时秒杀,10元即可体验  (专业解决各类攻击)>>点击进入