JavaScript/Notes/IBD

From Noisebridge
Jump to navigation Jump to search

Interface Based Design

Registering event handlers.

Events

An event is a notification that something has occurred.

Two ways to Register Events

  1. Event name as a property
  2. Event Listener Interface, and event registration mechanism on the object.

Event Name as a Property

Each event is a property name. The value is a function or null.

DOM Elements <source lang="javascript"> el["onclick"] = function(ev) {

 alert(this);

};</source>

Custom Objects and Events <source lang="javascript"> userPicker.onuserselected= function(ev) {

 console.log(ev.user + " chosen.");

}; </source>

Event Listener Interface

<source lang="javascript"> el.addEventListener("click", function(ev) {

 alert("clicked");

}, false); </source>

Custom objects <source lang="javascript"> userPicker.addCallback("onuserselected", function(ev) {

 console.log(ev.user + " chosen.");

}); </source>