The content of this article is about jQuery events? The introduction of jquery events has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
The load event is provided in the DOM for the execution mechanism after the page is loaded. jQuery provides the ready() method to achieve similar functions, but there are the following differences.
1. The load event in DOM does not have any abbreviated form, but the abbreviated form is provided in jQuery's ready() method.
2. The load event will be triggered only after the HTML page is loaded; and after the DOM node tree is loaded, the ready() method will be called.
3. Only one load event can exist in an HTML page, but multiple ready() methods can exist.
The syntax structure of the ready() method:
1.$(document).ready(function(){}); 2.$().ready(function(){});//简写 3.$(function(){});//简写
jQuery provides the bind() method to complete the binding event. The syntax is as follows
$element.bind(type,data,callback);
type: indicates the name of the binding event, which is a string type. There is no 'on'.
data: Additional data object (optional) passed to the event object as the element.data property value.
callback: Represents the processing function of the binding event.
The sample code is as follows:
<body> <button id='btn'>按钮</button> <script> function click1(){ console .log('this is button,'); } $('#btn').bind('click',click1);
jQuery provides the unbind() method to unbind events. The specific method is as follows:
$element.unbind(type[,data,callback]);
$('#btn').unbind('click');//只传递事件名称,解绑定该事件的所有处理函数。 $('#btn').undind('click'click1);//传递时间名称和指定的处理函数,解绑定该事件的指定处理函数。
<style> #title { width: 100px; height: 20px; border: 1px solid black; } ul { list-style: none; padding: 0; display: none; } li { width: 100px; height: 20px; border: 1px solid black; } </style> </head> <body> <p id="title">菜单</p> <ul> <li>北京</li> <li>南京</li> <li>天津</li> </ul> <script> // mouseover表示鼠标悬停在指定元素之上 mouseout表示鼠标从指定元素上移开 //jQuery支持链式操作,多事件绑定时,事件名称之间使用空格分离。 $('#title').bind('mouseover mouseout', function(){ if ($('ul').is(':hidden')) { $('ul').css('display','block'); } else { $('ul').css('display','none'); } }); /* unbind()方法 1.没有指定任何事件时 - 将指定元素的所有事件全部解绑定 2.指定一个事件名称时 - 将指定元素的指定当个事件解绑定 3.指定多个事件名称时 - 将指定元素的指定多个事件解绑定 */ $('#title').unbind('mouseover mouseout');
jQuery provides multiple sets of event binding and unbinding methods
1.bind() and unbind() - methods deleted after jQuery 3.0 version
2.on() and off() methods - New methods after jQuery version 1.7
In fact, the underlying methods of bind() and unbind() are on() and off()
3.live() and die() - Methods deleted after jQuery version 1.7
Function - Implement event delegation
4.delegate() and undelegate() - Methods added after jQuery 1.6 version, jQuery
Method deleted after version 3.0
Function - Implement event delegation
5. one() - Bind a one-time function to the event
jQuery provides the hover() method to simulate the mouse hover event effect .
$element.hover(over,out);
The sample code is as follows:
<style> #title { width: 100px; height: 20px; border: 1px solid black; } ul { list-style: none; padding: 0; display: none; } li { width: 100px; height: 20px; border: 1px solid black; } </style> </head> <body> <p id="title">菜单</p> <ul> <li>北京</li> <li>南京</li> <li>天津</li> </ul> <script> $('#title').hover(function(){ $('ul').css('display','block'); },function(){ $('ul').css('display','none'); }); </script> </body>
The trigger() method is provided in jQuery to simulate events bound to division matching elements.
$element.trigger(type[,dat]);
<body> <button id="btn">按钮</button> <script> // 绑定事件 - 由用户行为进行触发,调用处理函数 $('#btn').bind('click',function(){ console.log('this is button.'); }); // 模拟用户触发事件 $('#btn').trigger('click'); </script> </body>
Related recommendations:
What is event bubbling? How to use jquery to prevent event bubbling_jquery
javascript/jquery keyboard event introduction
The above is the detailed content of What are jQuery events? Introduction to jquery events. For more information, please follow other related articles on the PHP Chinese website!