- JavaScript:Moving to ES2015
- Ved Antani Simon Timms Narayan Prusty
- 273字
- 2021-07-09 19:07:43
The event object
So far, we attached anonymous functions as event handlers. To make our event handlers more generic and useful, we can create named functions and assign them to the events. Consider the following lines:
function handlesClicks(event){ //Handle click event } $("#bigButton").on('click', handlesClicks);
Here, we are passing a named function instead of an anonymous function to the on()
method. Let's shift our focus now to the event
parameter that we pass to the function. jQuery passes an event object with all the event callbacks. An event object contains very useful information about the event being triggered. In cases where we don't want the default behavior of the element to kick in, we can use the preventDefault()
method of the event object. For example, we want to fire an AJAX request instead of a complete form submission or we want to prevent the default location to be opened when a URL anchor is clicked on. In these cases, you may also want to prevent the event from bubbling up the DOM. You can stop the event propagation by calling the stopPropagation()
method of the event object. Consider this example:
$( "#loginform" ).on( "submit", function( event ) { // Prevent the form's default submission. event.preventDefault(); // Prevent event from bubbling up DOM tree, also stops any delegation event.stopPropagation(); });
Apart from the event object, you also get a reference to the DOM object on which the event was fired. This element can be referred by $(this)
. Consider the following example:
$( "a" ).click(function( event ) { var anchor = $( this ); if ( anchor.attr( "href" ).match( "google" ) ) { event.preventDefault(); } });
- Mastering JavaScript Object-Oriented Programming
- Java EE框架整合開發(fā)入門到實戰(zhàn):Spring+Spring MVC+MyBatis(微課版)
- Windows系統(tǒng)管理與服務配置
- Learning Flask Framework
- Java高手真經(高級編程卷):Java Web高級開發(fā)技術
- Vue.js 3.0源碼解析(微課視頻版)
- Python高級機器學習
- 大學計算機基礎實驗指導
- Mastering Android Game Development
- 用案例學Java Web整合開發(fā)
- HTML5開發(fā)精要與實例詳解
- NGUI for Unity
- After Effects CC案例設計與經典插件(視頻教學版)
- Tableau Dashboard Cookbook
- 深入淺出 HTTPS:從原理到實戰(zhàn)