


In the field of front-end development, jQuery is a very popular JavaScript library that simplifies tasks such as DOM manipulation, event handling, animation effects, etc. Among them, event processing is a very important part of front-end development. Mastering common event processing methods can help developers implement more interactive and functional web applications. In this article, we will delve into common jQuery events and demonstrate their use through specific code examples to help readers better understand and master these technologies.
Binding event handlers
In jQuery, you can use the on()
method to bind event handlers. This way you can add one or more event handlers for one or more selected elements. The following is a simple example that demonstrates how to add a click event handler for a button:
<!DOCTYPE html> <html> <head> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> </head> <body> <button id="myButton">Click me</button> <script> $("#myButton").on("click", function() { alert("Button clicked!"); }); </script> </body> </html>
In this example, when the user clicks the button, a prompt box will pop up showing "Button clicked!".
Common event types
jQuery supports many different types of events, including click events, mouse events, keyboard events, form events, etc. The following lists some commonly used event types and their corresponding sample codes:
-
Click event: Triggered when the element is clicked.
$("#myButton").on("click", function() { // 点击事件处理程序 });
-
Mouse events: Including mouse move in, move out, hover and other events.
$("#myElement").on({ mouseenter: function() { // 鼠标移入事件处理程序 }, mouseleave: function() { // 鼠标移出事件处理程序 } });
-
Keyboard events: Triggered when a keyboard key is pressed or released.
$(document).on("keydown", function(event) { console.log("Key pressed: " + event.key); });
-
Form events: Including events such as submitting the form and changing the content of the form.
$("#myForm").on("submit", function(event) { event.preventDefault(); // 阻止表单提交 // 表单提交事件处理程序 });
Event Delegation
Event delegation is a method of optimizing the performance of event handlers by binding events to ancestor elements rather than directly to descendant elements , which can save a lot of resource overhead. The following is a sample code for event delegation:
<!DOCTYPE html> <html> <head> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> </head> <body> <ul id="myList"> <li>Item 1</li> <li>Item 2</li> <li>Item 3</li> </ul> <script> $("#myList").on("click", "li", function() { alert($(this).text() + " clicked!"); }); </script> </body> </html>
In this example, when the user clicks on any li
element in the list, a prompt box will pop up to display the text content of the element. .
Custom events
In addition to the natively supported event types, jQuery also allows developers to create custom events and trigger these events. The following is a sample code for a custom event:
$("#myElement").on("customEvent", function() { console.log("Custom event triggered!"); }); $("#myElement").trigger("customEvent");
In this example, when the code is executed to trigger the custom event, "Custom event triggered!" will be output on the console.
Removing event handlers
Sometimes you need to remove a bound event handler. You can use the off()
method to complete this operation. Here is a sample code to remove an event handler:
function clickHandler() { alert("Element clicked!"); } $("#myElement").on("click", clickHandler); $("#removeButton").on("click", function() { $("#myElement").off("click", clickHandler); });
In this example, when the "removeButton" button is clicked, the click event handler on the "myElement" element is removed.
By learning and mastering jQuery’s common event handling methods, developers can process and respond to user operations more flexibly, improving the interactive experience of web applications. We hope that the code examples and explanations provided in this article can help readers better understand and apply these technologies and improve their front-end development skills.
The above is the detailed content of Improve front-end development skills: Revealing the secrets of jQuery common events. For more information, please follow other related articles on the PHP Chinese website!

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Linux new version
SublimeText3 Linux latest version

Notepad++7.3.1
Easy-to-use and free code editor

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

Dreamweaver CS6
Visual web development tools
