02.06.2013 Views

DOM Traversal Methods

DOM Traversal Methods

DOM Traversal Methods

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

var timesClicked = 0;<br />

$('#foo').bind('click', function(event) {<br />

alert('The quick brown fox jumps over the lazy dog.');<br />

timesClicked++;<br />

if (timesClicked >= 3) {<br />

$(this).unbind(event);<br />

}<br />

});<br />

[ 101 ]<br />

Chapter 5<br />

The handler in this case must take a parameter, so that we can capture the event<br />

object and use it to unbind the handler after the third click. The event object contains<br />

the context necessary for .unbind() to know which handler to remove.<br />

This example is also an illustration of a closure. Since the handler refers to the<br />

timesClicked variable, which is defined outside the function, incrementing the<br />

variable has an effect even between invocations of the handler.<br />

.one()<br />

Attaches a handler to an event for the elements. The handler is executed at<br />

most once.<br />

Parameters<br />

•<br />

•<br />

•<br />

.one(eventType[, eventData], handler)<br />

eventType: A string containing a JavaScript event type, such as<br />

click or submit<br />

eventData (optional): A map of data that will be passed to the event handler<br />

handler: A function to execute at the time the event is triggered<br />

Return Value<br />

The jQuery object, for chaining purposes.<br />

Description<br />

This method is identical to .bind(), except that the handler is unbound after its first<br />

invocation. For example:<br />

$('#foo').one('click', function() {<br />

alert('This will be displayed only once.');<br />

});

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!