Custom events
The events that are triggered naturally by the DOM implementations of browsers are crucial to any interactive web application. However, we are not limited to this set of events in our jQuery code. We can freely add our own custom events to the repertoire. We saw this briefly in Chapter 8, Developing Plugins when we saw how jQuery UI widgets trigger events, but we will investigate here how we can create and use custom events even outside plugins.
Custom events must be triggered manually by our code. In a sense, they are like regular functions that we define, in that we can cause a block of code to be executed when we invoke it from another place in the script. The .bind()
call corresponds to a function definition and the .trigger()
call to a function invocation.
However, event handlers are decoupled from the code that triggers them. This means that we can trigger events at any time, without knowing in advance what will happen when we do. We might cause a single bound event handler...