15.02.2013 Views

JavaScript Examples Bible - UserWorks Technologies

JavaScript Examples Bible - UserWorks Technologies

JavaScript Examples Bible - UserWorks Technologies

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Chapter 1 ✦ Generic HTML Element Objects (Chapter 15)<br />

function getEventProps(evt) {<br />

var msg = “”<br />

var elem = evt.target<br />

msg += “event.target.nodeName: “ + elem.nodeName + “\n”<br />

msg += “event.target.parentNode: “ + elem.parentNode.id + “\n”<br />

msg += “event button: “ + evt.button<br />

return msg<br />

}<br />

// onClick event handlers for body, myP, and mySPAN<br />

function bodyClick(evt) {<br />

var msg = “Click event processed in BODY\n\n”<br />

msg += getEventProps(evt)<br />

alert(msg)<br />

checkCancelBubble(evt)<br />

}<br />

function pClick(evt) {<br />

var msg = “Click event processed in P\n\n”<br />

msg += getEventProps(evt)<br />

alert(msg)<br />

checkCancelBubble(evt)<br />

}<br />

function spanClick(evt) {<br />

var msg = “Click event processed in SPAN\n\n”<br />

msg += getEventProps(evt)<br />

alert(msg)<br />

checkCancelBubble(evt)<br />

}<br />

// cancel event bubbling if check box is checked<br />

function checkCancelBubble(evt) {<br />

if (document.controls.bubbleOn.checked) {<br />

evt.stopPropagation()<br />

}<br />

}<br />

// assign onClick event handlers to three elements<br />

function init() {<br />

document.body.onclick = bodyClick<br />

document.getElementById(“myP”).onclick = pClick<br />

document.getElementById(“mySPAN”).onclick = spanClick<br />

}<br />

// invoke fireEvent() on object whose ID is passed as parameter<br />

function doDispatch(objID, evt) {<br />

// don’t let button clicks bubble<br />

evt.stopPropagation()<br />

var newEvt = document.createEvent(“MouseEvent”)<br />

if (newEvt) {<br />

newEvt.button = 3<br />

document.getElementById(objID).dispatchEvent(newEvt)<br />

} else {<br />

Continued<br />

65<br />

elementObject.dispatchEvent()

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

Saved successfully!

Ooh no, something went wrong!