Chapter 14 - Dynamic HTML: Event Model

Similar documents
Introduzione Modello degli Eventi Manipolare eventi Usare l oggetto event per gestire le azioni utente Riconoscere e gestire gli eventi principali

Chapter 14. Dynamic HTML: Event Model

JAVASCRIPT BASICS. Handling Events In JavaScript. In programing, event-driven programming could be a programming

LECTURE-3. Exceptions JS Events. CS3101: Programming Languages: Javascript Ramana Isukapalli

Events: another simple example

TEXTAREA NN 2 IE 3 DOM 1

LECTURE-2. Functions review HTML Forms. Arrays Exceptions Events. CS3101: Scripting Languages: Javascript Ramana Isukapalli

Fundamentals of Website Development

Introduction to DHTML

New Perspectives on Creating Web Pages with HTML. Tutorial Objectives

JSF - H:INPUTSECRET. Class name of a validator that s created and attached to a component

1$ 5 ! $ 6 4 * Source: 0 "!*! 0! * 8 97 ?!$ 5 0 *! 4! $ 0 : * ' () 7;7 7<7

JavaScript and XHTML. Prof. D. Krupesha, PESIT, Bangalore

Want to add cool effects like rollovers and pop-up windows?

CISH-6510 Web Application Design and Development. Overview of JavaScript. Overview

Pearson Education Limited Edinburgh Gate Harlow Essex CM20 2JE England and Associated Companies throughout the world

HTML User Interface Controls. Interactive HTML user interfaces. Document Object Model (DOM)

Princeton University COS 333: Advanced Programming Techniques A Subset of JavaScript

Princeton University COS 333: Advanced Programming Techniques A Subset of JavaScript

Canvas & Brush Reference. Source: stock.xchng, Maarten Uilenbroek

JavaScript Handling Events Page 1

Key features. Nothing to do with java It is the Client-side scripting language Designed to add interactivity to HTML pages

JSF - H:SELECTONEMENU

DOM Primer Part 2. Contents

JSF - H:SELECTONERADIO

Outline. Lecture 4: Document Object Model (DOM) What is DOM Traversal and Modification Events and Event Handling

Name Related Elements Type Default Depr. DTD Comment

JSF - H:PANELGRID. JSF Tag. Rendered Output. Tag Attributes. The h:panel tag renders an HTML "table" element. Attribute & Description.

Continues the Technical Activities Originated in the WAP Forum

710 Index Attributes, 127 action attribute, 263 assigning, bottom attribute, domain name attribute, 481 expiration date attribute, 480 8

Beijing , China. Keywords: Web system, XSS vulnerability, Filtering mechanisms, Vulnerability scanning.

link document.getelementbyid("coffee").style.borderwidth = "0px" document.getelementbyid("tea").style.borderwidth = "10px"

Photo from DOM

CHAPTER 2 MARKUP LANGUAGES: XHTML 1.0

This tutorial has been designed for beginners in HTML5 to make them understand the basicto-advanced

The first sample. What is JavaScript?

Introduction to using HTML to design webpages

Introduction to JavaScript, Part 2

3Lesson 3: Functions, Methods and Events in JavaScript Objectives

HTML Summary. All of the following are containers. Structure. Italics Bold. Line Break. Horizontal Rule. Non-break (hard) space.

INTRODUCTION TO WEB DEVELOPMENT AND HTML. Lecture 15: JavaScript loops, Objects, Events - Spring 2011

COMP519 Web Programming Lecture 16: JavaScript (Part 7) Handouts

CSI 3140 WWW Structures, Techniques and Standards. Markup Languages: XHTML 1.0

CSC Javascript

Skyway Builder Web Control Guide

New Media Production Lecture 7 Javascript

NAME: name a section of the page TARGET = "_blank" "_parent" "_self" "_top" window name which window the document should go in

Overview. Event Handling. Introduction. Reviewing the load Event. Event mousemove and the event Object. Rollovers with mouseover and mouseout

Javascript. A key was pressed OR released. A key was released. A mouse button was pressed.

CSS The web browser uses its own resources, and eases the burden on the server. It has fewer features than server side scripting.

XHTML Mobile Profile. Candidate Version Feb Open Mobile Alliance OMA-TS-XHTMLMP-V1_ C

CITS3403 Agile Web Development Semester 1, 2018

Dynamic Web Pages - Integrating JavaScript into a SAS Web Application Caroline Bahler, ASG, Inc.

Installation and Configuration Manual

CSE 154 LECTURE 10: MORE EVENTS

Advanced HTML Scripting WebGUI Users Conference

HTML TAG SUMMARY HTML REFERENCE 18 TAG/ATTRIBUTE DESCRIPTION PAGE REFERENCES TAG/ATTRIBUTE DESCRIPTION PAGE REFERENCES MOST TAGS

HTML 5 Tables and Forms

COPYRIGHTED MATERIAL. Contents. Chapter 1: Creating Structured Documents 1

UNIT - III. Every element in a document tree refers to a Node object. Some nodes of the tree are

By the end of this section of the practical, the students should be able to:

Catching Events. Bok, Jong Soon

Creating Web Pages with HTML-Level III Tutorials HTML 6.01

Digitizing Sound and Images III Storing Bits

Window Interface. get only ApplicationCache window.applicationcache. get only boolean window.closed

Deccansoft Software Services

Appendix A. XHTML 1.1 Module Reference

Chapter 1 Getting Started with HTML 5 1. Chapter 2 Introduction to New Elements in HTML 5 21

Place User-Defined Functions in the HEAD Section

Implementing a chat button on TECHNICAL PAPER

Such JavaScript Very Wow

DIPLOMA IN WEB DESIGNING

E ECMAScript, 21 elements collection, HTML, 30 31, 31. Index 161

Web Designing Course

NEW WEBMASTER HTML & CSS FOR BEGINNERS COURSE SYNOPSIS

JavaScript Bible 4th Edition Danny Goodman. JavaScript and Browser Objects Quick Reference 20 February 2001

SPARK. User Manual Ver ITLAQ Technologies

JS Tutorial 3: InnerHTML Note: this part is in last week s tutorial as well, but will be included in this week s lab

Full file at Tutorial 2: Working with Operators and Expressions

HTML. HTML Evolution

JAVASCRIPT FOR PROGRAMMERS

HTML & XHTML Tag Quick Reference

!Accessibility Issues Found

Web Design and Application Development

a.) All main headings should be italicized. h1 {font-style: italic;} Use an ordinary selector. HTML will need no alteration.

Web Programming/Scripting: JavaScript

UNIT 3 SECTION 1 Answer the following questions Q.1: What is an editor? editor editor Q.2: What do you understand by a web browser?

IS 242 Web Application Development I

Experience the Magic of On-the-fly Modernization. Screen Customization Guide. for Genie Version 3.0

IMY 110 Theme 11 HTML Frames

XHTML & CSS CASCADING STYLE SHEETS

COPYRIGHTED MATERIAL. Contents. Introduction. Chapter 1: Structuring Documents for the Web 1

ITEC447 Web Projects CHAPTER 9 FORMS 1

Dynamic HTML becomes HTML5. HTML Forms and Server Processing. Form Submission to Web Server. DHTML - Mouse Events. CMST385: Slide Set 8: Forms

Web Development & Design Foundations with HTML5

Loops/Confirm Tutorial:

Internet publishing HTML (XHTML) language. Petr Zámostný room: A-72a phone.:

EVENT-DRIVEN PROGRAMMING

Index. CSS directive, # (octothorpe), intrapage links, 26

Website Development with HTML5, CSS and Bootstrap

Transcription:

Chapter 1 - Dynamic HTML: Event Model Outline 1.1 Introduction 1.2 Event onclick 1.3 Event onload 1. Error Handling with onerror 1.5 Tracking the Mouse with Event onmousemove 1.6 Rollovers with onmouseover and onmouseout 1. Form Processing with onfocus and onblur 1.8 More Form Processing with onsubmit and onreset 1.9 Event Bubbling 1.10 More DHTML Events 1 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> 5 <!-- Fig 1.1: onclick.html --> 6 <!-- Demonstrating the onclick event --> 10 <title>dhtml Event Model - onclick</title> 11 12 <!-- The for attribute declares the script for --> 13 <!-- a certain element, and the event for a --> 1 <!-- certain event. --> 15 <script type = "text/javascript" for = "para" 16 event = "onclick"> 1 <!-- 18 alert( "Hi there" ); 19 // --> 20 </script> 21 </head> 22 23 <body> 2 25 <!-- The id attribute gives a unique identifier --> 26 <p id = "para">click on this text!</p> 2 28 <!-- You can specify event handlers inline --> 29 <input type = "button" value = "Click Me!" 30 onclick = "alert( 'Hi again' )" /> 31 32 </body> 33 </html> Outline Onclick.html The script element will display an alert dialog box if the onclick event occurs for the element whose id is para. JavaScript enables the user to respond to events. The onclick event occurs when the user clicks the mouse. The p element is assigned an id that can be used to reference it. The input element creates a button that displays an alert when clicked. 2

Outline 3 Alert invoked by script (lines 15-20). Button created by the input element (lines 29-30). Alert invoked by the input element (lines 29-30). 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> 5 <!-- Fig. 1.2: onload.html --> 6 <!-- Demonstrating the onload event --> 10 <title>dhtml Event Model - onload</title> 11 <script type = "text/javascript"> 12 <!-- 13 var seconds = 0; 1 15 function starttimer() { 16 // 1000 milliseconds = 1 second 1 window.setinterval( "updatetime()", 1000 ); 18 } 19 20 function updatetime() { 21 seconds++; 22 sofar.innertext = seconds; 23 } 2 // --> 25 </script> 26 </head> 2 28 <body onload = "starttimer()"> 29 30 <p>seconds you have spent viewing this page so far: 31 <a id = "sofar"><strong>0</strong></a></p> 32 33 </body> 3 </html> Outline Onload.html Function starttimer will call function updatetime every 1000 milliseconds. Method window.setinterval is used to invoke function updatetime every second. Function updatetime sets the innertext property of the element with sofar as an id to the number of seconds that have elapsed since loading. The onload event executes when an element finishes loading.

Outline 5 The page will dynamically update the number of seconds that have elapsed since the page has loaded every second. 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> 5 <!-- Fig 1.3: onerror.html --> 6 <!-- Demonstrating the onerror event --> 10 <title>dhtml Event Model - onerror</title> 11 <script type = "text/javascript"> 12 <!-- 13 // Specify that if an onerror event is triggered 1 // in the window function handleerror should execute 15 window.onerror = handleerror; 16 1 function dothis() { 18 alrrt( "hi" ); // alert misspelled, creates an error 19 } 20 21 // The ONERROR event passes three values to the 22 // function: the name of the error, the url of 23 // the file, and the line number. 2 function handleerror( errtype, errurl, errlinenum ) 25 { 26 // Writes to the status bar at the 2 // bottom of the window. 28 window.status = "Error: " + errtype + " on line " + 29 errlinenum; 30 31 // Returning a value of true cancels the 32 // browser s reaction. 33 return true; 3 } 35 // --> Returning true indicates that the error has been handled successfully. Outline Onerror.html The onerror event allows the developer to handle errors more elegantly. If an onerror event in triggered the function handleerror will be invoked. The call to display the alert dialog is purposely written incorrectly to invoke the onerror event. Function handleerror will display the error type and the line that causes the error on the status bar of the browser. 6

36 </script> 3 </head> 38 39 <body> 0 1 <input id = "mybutton" type = "button" value = "Click Me!" 2 onclick = "dothis()" /> 3 </body> 5 </html> Outline Onerror.html Custom e rro r output The error created by trying to invoke function dothis is handled by the message in the status bar of the browser. 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> 5 <!-- Fig. 1.: onmousemove.html --> 6 <!-- Demonstrating the onmousemove event --> 10 <title>dhtml Event Model - onmousemove event</title> 11 <script type = "text/javascript"> 12 <!-- 13 function updatemousecoordinates() 1 { 15 coordinates.innertext = event.srcelement.tagname + 16 " (" + event.offsetx + ", " + event.offsety + ")"; 1 } 18 // --> 19 </script> 20 </head> 21 22 <body style = "back-groundcolor: wheat" 23 onmousemove = "updatemousecoordinates()"> 2 25 <span id = "coordinates">(0, 0)</span><br /> 26 <img src = "deitel.gif" style = "position: absolute; 2 top: 100; left: 100" alt = "Deitel" /> 28 29 </body> 30 </html> Outline Onmousemove.html The innertext property of the coordinates element will be assigned a string containing the name of the element, and the coordinates of the mouse position over the element. The offsetx and offsety properties of the event object give the location of the mouse cursor relative to the top-left corner of the object on which the event was triggered. The onmousemove event is invoked every time the user moves the mouse. 8

Outline 9 Updated text (keeps changing as you move the mous e) The mouse is over the body of the page as indicated by the text at the top right. The mouse is over the image on the page as indicated by the text at the top right. 1.6 Rollovers with onmouseover and onmouseout 10 Property of event altkey button cancelbubble clientx / clienty ctrlkey offsetx / offsety propertyname recordset returnvalue screenx / screeny shiftkey srcelement type x / y Description This value is true if Alt key was pressed when event fired. Returns which mouse button was pressed by user (1: left-mouse button, 2: right-mouse button, 3: left and right buttons, : middle button, 5: left and middle buttons, 6: right and middle buttons, : all three buttons). Set to false to prevent this event from bubbling (see Section 1.9, Event Bubbling ). The coordinates of the mouse cursor inside the client area (i.e., the active area where the Web page is displayed, excluding scrollbars, navigation buttons, etc.). This value is true if Ctrl key was pressed when event fired. The coordinates of the mouse cursor relative to the object that fired the event. The name of the property that changed in this event. A reference to a data field s recordset (see Chapter 16, Data Binding ). Set to false to cancel the default browser action. The coordinates of the mouse cursor on the screen coordinate system. This value is true if Shift key was pressed when event fired. A reference to the object that fired the event. The name of the event that fired. The coordinates of the mouse cursor relative to this element s parent element. Fig. 1.5 Some event object properties.

Outline 11 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> 5 <!-- Fig 1.6: onmouseoverout.html --> Onmouseoverout.html 6 <!-- Events onmouseover and onmouseout --> 10 <title> 11 DHTML Event Model - onmouseover and onmouseout 12 </title> 13 <script type = "text/javascript"> The function mover handles the 1 <!-- onmouseover event for the image 15 captionimage1 = new Image(); 16 captionimage1.src = "caption1.gif"; by setting its src attribute to the src 1 captionimage2 = new Image(); 18 captionimage2.src = "caption2.gif"; property of the appropriate image. 19 20 function mover() 21 { 22 if ( event.srcelement.id == "tablecaption" ) { 23 event.srcelement.src = captionimage2.src; 2 return; 25 } 26 2 // If the element which triggered onmouseover has 28 // an id, change its color to its id. 29 if ( event.srcelement.id ) 30 event.srcelement.style.color = 31 event.srcelement.id; 32 } 33 3 function mout() 35 { 36 if ( event.srcelement.id == "tablecaption" ) { 3 event.srcelement.src = captionimage1.src; 38 return; 39 } 0 1 // If it has an id, change the text inside to the 2 // text of the id. 3 if ( event.srcelement.id ) event.srcelement.innertext = event.srcelement.id; 5 } 6 document.onmouseover = mover; 8 document.onmouseout = mout; 9 // --> 50 </script> 51 </head> 52 53 <body style = "background-color: wheat"> 5 55 <h1>guess the Hex Code's Actual Color</h1> 56 5 <p>can you tell a color from its hexadecimal RGB code 58 value? Look at the hex code, guess the color. To see 59 what color it corresponds to, move the mouse over the 60 hex code. Moving the mouse out will display the color 61 name.</p> 62 63 <table style = "width: 50%; border-style: groove; 6 text-align: center; font-family: monospace; 65 font-weight: bold"> 66 Outline 12 Onmouseoverout.html The function mout handles the onmouseout event for the image. It works similarly to the mover function. This code tests if an id is specified, and if it is, the code changes the color of the element to match the color name in the id. The onmouseover event occurs when the mouse cursor moves over an element. The onmouseout event occurs when the mouse cursor leaves the element.

6 <caption> 68 <img src = "caption1.gif" id = "tablecaption" 69 alt = "Table Caption" /> 0 </caption> 1 2 <tr> 3 <td><a id = "Black">#000000</a></td> <td><a id = "Blue">#0000FF</a></td> 5 <td><a id = "Magenta">#FF00FF</a></td> 6 <td><a id = "Gray">#808080</a></td> </tr> 8 <tr> 9 <td><a id = "Green">#008000</a></td> 80 <td><a id = "Lime">#00FF00</a></td> 81 <td><a id = "Maroon">#800000</a></td> 82 <td><a id = "Navy">#000080</a></td> 83 </tr> 8 <tr> 85 <td><a id = "Olive">#808000</a></td> 86 <td><a id = "Purple">#800080</a></td> 8 <td><a id = "Red">#FF0000</a></td> 88 <td><a id = "Silver">#C0C0C0</a></td> 89 </tr> 90 <tr> 91 <td><a id = "Cyan">#00FFFF</a></td> 92 <td><a id = "Teal">#008080</a></td> 93 <td><a id = "Yellow">#FFFF00</a></td> 9 <td><a id = "White">#FFFFFF</a></td> 95 </tr> 96 </table> 9 98 </body> 99 </html> Outline 13 Onmouseoverout.html Outline 1 Onrollover the text will change to the color of the corresponding hex code.

Outline 15 Onmouseout the hex value will be replaced by the color it represents. 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> 5 <!-- Fig. 1.: onfocusblur.html --> 6 <!-- Demonstrating the onfocus and onblur events --> 10 <title>dhtml Event Model - onfocus and onblur</title> 11 <script type = "text/javascript"> 12 <!-- 13 var helparray = 1 [ "Enter your name in this input box.", 15 "Enter your email address in this input box, " + 16 "in the format user@domain.", 1 "Check this box if you liked our site.", 18 "In this box, enter any comments you would " + 19 "like us to read.", 20 "This button submits the form to the " + 21 "server-side script", 22 "This button clears the form", 23 "This textarea provides context-sensitive " + 2 "help. Click on any input field or use the TAB " + 25 "key to get more information about the " + 26 "input field." ]; 2 28 function helptext( messagenum ) 29 { 30 myform.helpbox.value = helparray[ messagenum ]; 31 } 32 // --> 33 </script> 3 </head> 35 Outline 16 Onfocusblur.html The script changes the text inside the text box in the upper-right corner based on the messagenum passed to helptext.

36 <body> 3 38 <form id = "myform" action = ""> 39 Name: <input type = "text" name = "name" 0 onfocus = "helptext(0)" onblur = "helptext(6)" /><br /> 1 Email: <input type = "text" name = "email" 2 onfocus = "helptext(1)" onblur = "helptext(6)" /><br /> 3 Click here if you like this site <input type = "checkbox" name = "like" onfocus = 5 "helptext(2)" onblur = "helptext(6)" /><br /><hr /> 6 Any comments?<br /> 8 <textarea name = "comments" rows = "5" cols = "5" 9 onfocus = "helptext(3)" onblur = "helptext(6)"> 50 </textarea><br /> 51 <input type = "submit" value = "Submit" onfocus = 52 "helptext()" onblur = "helptext(6)" /> 53 <input type = "reset" value = "Reset" onfocus = 5 "helptext(5)" onblur = "helptext(6)" /> 55 56 <textarea name = "helpbox" style = "position: absolute; 5 right: 0; top: 0" rows = "" cols = "5"> 58 This textarea provides context-sensitive help. Click on 59 any input field or use the Tab key to get more information 60 about the input field.</textarea> 61 </form> 62 63 </body> 6 </html> Outline 1 Onfocusblur.html The onfocus event fires when an element gains focus. The onblur event fires when an element loses focus, which occurs when another control gains the focus. Outline 18 The other elements are currently onblur. The focus in this form is currently on the email text box as could be seen by the location of the mouse cursor.

2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> 5 <!-- Fig 1.8: onsubmitreset.html --> 6 <!-- Demonstrating the onsubmit and onreset events --> 10 <title> 11 DHTML Event Model - onsubmit and onreset events 12 </title> 13 <script type = "text/javascript"> 1 <!-- 15 var helparray = 16 [ "Enter your name in this input box.", 1 "Enter your email address in this input box, " + 18 "in the format user@domain.", 19 "Check this box if you liked our site.", 20 "In this box, enter any comments you would " + 21 "like us to read.", 22 "This button submits the form to the " + 23 "server-side script", 2 "This button clears the form", 25 "This textarea provides context-sensitive " + 26 "help. Click on any input field or use the Tab " + 2 "key to get more information about " + 28 "the input field." ]; 29 30 function helptext( messagenum ) 31 { 32 myform.helpbox.value = helparray[ messagenum ]; 33 } 3 Outline 19 Onsubmitreset.ht ml 35 function formsubmit() { 36 window.event.returnvalue = false; 3 38 if ( confirm ( "Are you sure you want to submit?" ) ) 39 window.event.returnvalue = true; 0 } 1 2 function formreset() { 3 window.event.returnvalue = false; 5 if ( confirm( "Are you sure you want to reset?" ) ) 6 window.event.returnvalue = true; } 8 // --> 9 </script> 50 </head> 51 52 <body> 53 5 <form id = "myform" onsubmit = "formsubmit()" 55 onreset = "formreset()" action = ""> 56 Name: <input type = "text" name = "name" A dialog to ask the user to confirm the action is displayed, if the user confirms then the action is executed on the form. 5 onfocus = "helptext(0)" onblur = "helptext(6)" /><br /> 58 Email: <input type = "text" name = "email" 59 onfocus = "helptext(1)" onblur = "helptext(6)" /><br /> 60 Click here if you like this site 61 <input type = "checkbox" name = "like" onfocus = 62 "helptext(2)" onblur = "helptext(6)" /><hr /> 63 6 Any comments?<br /> 65 <textarea name = "comments" rows = "5" cols = "5" 66 onfocus = "helptext(3)" onblur = "helptext(6)"> 6 </textarea><br /> 68 <input type = "submit" value = "Submit" onfocus = 69 "helptext()" onblur = "helptext(6)" /> Outline 20 Onsubmitreset.ht ml The returnvalue property is set to false and cancels the default action of the event on the element.

0 <input type = "reset" value = "Reset" onfocus = 1 "helptext(5)" onblur = "helptext(6)" /> 2 3 <textarea name = "helpbox" style = "position: absolute; right:0; top: 0" rows = "" cols = "5"> 5 This textarea provides context-sensitive help. Click on 6 any input field or use the Tab key to get more information about the input field.</textarea> 8 </form> 9 80 </body> 81 </html> Outline 21 Onsubmitreset.ht ml When the user clicks on the Submit button, a dialog pops up asking the user to confirm the submission. 2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 3 "http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd"> 5 <!-- Fig 1.9: bubbling.html --> 6 <!-- Disabling event bubbling --> 10 <title>dhtml Event Model - Event Bubbling</title> 11 12 <script type = "text/javascript"> 13 <!-- 1 function documentclick() 15 { 16 alert( "You clicked in the document" ); 1 } 18 19 function paragraphclick( value ) 20 { 21 alert( "You clicked the text" ); 22 23 if ( value ) 2 event.cancelbubble = true; 25 } 26 2 document.onclick = documentclick; 28 // --> 29 </script> 30 </head> 31 Outline 22 Bubbling.html By setting the cancelbubble method to true, disables event bubbling.

32 <body> 33 3 <p onclick = "paragraphclick( false )">Click here!</p> 35 <p onclick = "paragraphclick( true )">Click here, too!</p> 36 </body> 3 </html> Outline 23 Bubbling.html The event has bubbled up to the document le vel Clicking on the first p element triggers line 2 because the onclick event has bubbled up to the document level. Clicking on the second p element passes a value of true to function paragraphclick, which will disable the event bubbling for this event. The event has been canceled 1.10 More DHTML Events 2 Event Clipboard events onbeforecut onbeforecopy onbeforepaste oncopy oncut onabort onpaste Data binding events onafterupdate onbeforeupdate oncellchange ondataavailable ondatasetchanged Description Fires before a selection is cut to the clipboard. Fires before a selection is copied to the clipboard. Fires before a selection is pasted from the clipboard. Fires when a selection is copied to the clipboard. Fires when a selection is cut to the clipboard. Fires if image transfer has been interrupted by user. Fires when a selection is pasted from the clipboard. Fires immediately after a databound object has been updated. Fires before a data source is updated. Fires when a data source has changed. Fires when new data from a data source become available. Fires when content at a data source has changed. ondatasetcomplete Fires when transfer of data from the data source has completed. onerrorupdate Fires if an error occurs while updating a data field. onrowenter Fires when a new row of data from the data source is available. onrowexit Fires when a row of data from the data source has just finished. onrowsdelete Fires when a row of data from the data source is deleted. Fires when a row of data from the data source is inserted. onrowsinserted Fig. 1.10 Dynamic HTML events.

1.10 More DHTML Events 25 Event Keyboard Events Description onhelp Fires when the user initiates help (i.e., by pressing the F1 key). onkeydown Fires when the user pushes down a key. onkeypress Fires when the user presses a key. onkeyup Fires when the user ends a key press. marquee events onbounce Fires when a scrolling marquee bounces back in the other direction. onfinish Fires when a marquee finishes its scrolling. onstart Fires when a marquee begins a new loop. Mouse events oncontextmenu ondblclick ondrag ondragend ondragenter ondragleave ondragover ondragstart Fires when the context menu is shown (right-click). Fires when the mouse is double-clicked. Fires during a mouse drag. Fires when a mouse drag ends. Fires when something is dragged onto an area. Fires when something is dragged out of an area. Fires when a drag is held over an area. Fires when a mouse drag begins. ondrop Fires when a mouse button is released over a valid target during a drag. onmousedown Fires when a mouse button is pressed down. Fires when a mouse button is released. onmouseup Fig. 1.10 Dynamic HTML events. 1.10 More DHTML Events 26 Event Miscellaneous Events onafterprint onbeforeeditfocus onbeforeprint onbeforeunload Description Fires immediately after the document prints. Fires before an element gains focus for editing. Fires before a document is printed. Fires before a document is unloaded (i.e., the window was closed or a link was clicked). onchange onfilterchange Fires when a new choice is made in a select element, or when a text input is changed and the element loses focus. Fires when a filter changes properties or finishes a transition (see Chapter 15, Filters and Transitions). Fires when the releasecapture method is invoked. onlosecapture onpropertychange Fires when the property of an object is changed. onreadystatechange Fires when the readystate property of an element changes. onreset Fires when a form resets (i.e., the user clicks an <input type = "reset">). onresize onscroll Fires when the size of an object changes (i.e., the user resizes a window or frame). Fires when a window or frame is scrolled. onselect Fires when a text selection begins (applies to input or textarea). onselectstart onstop onunload Fig. 1.10 Dynamic HTML events. Fires when the object is selected. Fires when the user stops loading the object. Fires when a page is about to unload.