The events that get triggered naturally by the DOM implementations of browsers are crucial to any interactive web application. However, we aren't 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 when not writing a plugin.
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
.on() call for a custom event behaves like a function definition, while the
.trigger() call acts like 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...