经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » JS/JS库/框架 » jQuery » 查看文章
jQuery常见事件的监听方式
来源:cnblogs  作者:Erudite  时间:2021/6/7 9:11:15  对本文有异议

Web 页面经常会有各种事件发生,事件发生后需要进行一些特定处理,即执行特定的函数或者语句。这就需要对事件进行监听,监听事件的常见方式有以下三种,本人将通过实例来具体介绍。

1.HTML标签内联事件

实例1:单击页面 "Hello" 按钮,弹出提示框显示 Hello world!

  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>无标题文档</title>
  6. </head>
  7. <body>
  8. <button onclick="alert('Hello world!')">Hello</button>
  9. </body>
  10. </html>

注:在实例1中,事件的监听代码是放在 HTML 标签中,这种方式看起来比较直观,但是这是一种不大提倡的事件监听方式。首先,将视图代码(HTML)与交互代码(Javascript)相结合,意味着每当需要更新功能时,都必须编辑 HTML,这将给代码后期的维护带来很大麻烦。其次,它不具备可扩展性。如果我们要将这个单击功能附加到许多按钮上,那么不仅要用一堆重复的代码来增加页面量,而且还会破坏可维护性

2.用JavaScript实现事件监听

实例2:单击页面"Hello"按钮,弹出提示框显示Hello world!

  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset-"utf-8">
  5. <title>无标题文档</title>
  6. <script type="text/javascript">
  7.   window.onload = function {
  8.     var helloBtn = document.getElementByld("helloBtn");
  9. helloBtn.onclick = function() {
  10. alert("Hello world!");
  11. }
  12. }
  13. </script>
  14. </head>
  15.  
  16. <body>
  17. <button id="helloBtn">Hello</button>
  18. </body>
  19. </html>

3.用jQuery实现事件监听

使用jQuery监听事件有很多种方法,如实例3所示。

实例3:单击页面 "Hello" 按钮,弹出提示框显示 Hello world!

  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>无标题文档</title>
  6. <script src="jquery-3.3.1.js"></script>
  7. <script type="text/javascript">
  8.   $(function() {
  9. //jQuery第一种监听事件方法
  10.     $("#helloBtn").click(function() {
  11.       alert("Hello world!");
  12.     });
  13. //jQuery第二种监听事件方法
  14.     $("#helloBtn").bind("click"function() {
  15.       alert("Hello world!");
  16.     });
  17. //jQuery第三种监听事件方法
  18.     $("#helloBtn").on("click"function() {
  19.       alert("Hello world!");
  20.     });
  21. //jQuery第四种监听事件方法
  22.     $("body").on({
  23.       click: function() {
  24.         alert("Hello world!");
  25.       }
  26.     }, "button");
  27. //jQuery第五种监听事件方法
  28.     $("pody").on("click", "button", function() {
  29.       alert("Hello world!");
  30.     });
  31.   });
  32. </script>
  33. </head>
  34.  
  35. <body>
  36. <button id="helloBtn">Hello</button>
  37. </body>
  38. </html>

注:下面具体分析实例3中用到的 jQuery 事件监听方法。
(1)第一种事件监听方法click(),是一种比较常见的、便捷的事件监听方法。
(2)第二种事件监听方法bind(),已被jQuery 3.0弃用。自jQuery 1.7以来被 on() 方法(即第三种事件监听方法)所取代,虽然在这里也能使用且不报错,而且此方法之前比较常见,但是不鼓励使用它。
(3)第三种事件监听方法on(),从jQuery 1.7开始,所有的事件绑定方法最后都是调用on() 方法来实现的,使用on() 方法实现事件监听会更快、更具一致性。
(4)第四种和第五种方法,监听的是 body 上所有 button 元素的 click 事件。DOM 树里更高层的一个元素监听发生在它的 children 元素上的事件,这个过程叫作事件委托(event delegation)。感兴趣的读者可以查看官方帮助文档。

原文链接:http://www.cnblogs.com/xcbb/p/14845256.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号