Page 1 of 39 Javascript Chapters 13, 14 Vadim Parizher Computer Science Department California State University, Northridge Fall 2003 Slides from text Book.

Slides:



Advertisements
Similar presentations
1 Introduction to Web Application Implement JavaScript in HTML.
Advertisements

Session 11 Dynamic HTML: Event Model and Filters Matakuliah: M0114/Web Based Programming Tahun: 2005 Versi: 5.
JavaScript Forms Form Validation Cookies. What JavaScript can do  Control document appearance and content  Control the browser  Interact with user.
Chapter 7 © 2001 by Addison Wesley Longman, Inc. 1 Chapter 7 Sebesta: Programming the World Wide Web.
20-Jun-15 JavaScript and HTML Simple Event Handling.
Outline IS400: Development of Business Applications on the Internet Fall 2004 Instructor: Dr. Boris Jukic DHTML.
Lesson 2 Event Handling. Object Event Handlers Most of the objects that make up the Document Object Model respond to asynchronous, user generated events.
© De Montfort University, Document Object Model Howell Istance School of Computing De Montfort University.
JavaScript Client Side scripting. Client-side Scripts Client-side scripts, which run on the user’s workstation can be used to: Validate user inputs entered.
 2008 Pearson Education, Inc. All rights reserved JavaScript: Events.
CP476 Internet Computing JavaScript and HTML1 1.JavaScript Execution Environment The JavaScript Window object represents the window in which the browser.
JS: DOM Form Form Object Form Object –The Form object represents an HTML form. –For each instance of a tag in an HTML document, a Form object is created.
HTML Forms/Events (Instructor Lesson) The Event model HTML Forms Custom Events 1.
CNIT 133 Interactive Web Pags – JavaScript and AJAX Event and Event Handling.
JavaScript - a Brief Introduction Anupriya. What is JavaScript Object based (not object oriented) programming language –very limited object creation –a.
 2004 Prentice Hall, Inc. All rights reserved. Chapter 13 - Dynamic HTML: Object Model and Collections Outline 13.1 Introduction 13.2 Object Referencing.
Chapter 19: Adding JavaScript
Chapter 5 © 2003 by Addison-Wesley, Inc. 1 Chapter 5 JavaScript and HTML Documents.
1 JavaScript: Event Model November 1, 2005 Slides modified from Internet & World Wide Web: How to Program (3rd) edition. By Deitel, Deitel, and Goldberg.
CSS Class 7 Add JavaScript to your page Add event handlers Validate a form Open a new window Hide and show elements Swap images Debug JavaScript.
 2001 Prentice Hall, Inc. All rights reserved. 1 Chapter 13 - Dynamic HTML: Object Model and Collections Outline 13.1 Introduction 13.2 Object Referencing.
1 Dynamic HTML III: Event Model Introduction Event model –Scripts respond to user actions and change page accordingly Moving mouse Scrolling screen.
Lesson13. JavaScript JavaScript is an interpreted language, designed to function within a web browser. It can also be used on the server.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 16 – Dynamic HTML: Event Model Outline 16.1Introduction 16.2Event ONCLICK 16.3Event ONLOAD.
 2004 Prentice Hall, Inc. All rights reserved. Chapter 14 - Dynamic HTML: Event Model Outline 14.1 Introduction 14.2 Event onclick 14.3 Event onload 14.4.
Pemrograman Teknologi Internet W06: Functions and Events.
Extending HTML CPSC 120 Principles of Computer Science April 9, 2012.
Introduction to JavaScript 41 Introduction to Programming the WWW I CMSC Winter 2004 Lecture 17.
 2001 Prentice Hall, Inc. All rights reserved. 1 Chapter 13 - Dynamic HTML: Object Model and Collections Outline 13.1 Introduction 13.2 Object Referencing.
 2001 Prentice Hall, Inc. All rights reserved. 1 Chapter 14 - Dynamic HTML: Event Model Outline 14.1 Introduction 14.2 Event onclick 14.3 Event onload.
 2001 Deitel & Associates, Inc. All rights reserved. 1 Chapter 20 – Dynamic HTML: Object Model and Collections Outline 20.1Introduction 20.2Object Referencing.
Chapter 7: DHTML: Object Model and Collections CIS 275—Web Application Development for Business I.
Chapter 5 © 2005 by Addison Wesley Longman, Inc JavaScript Execution Environment - The JavaScript Window object represents the window in which the.
Lecture 10 JavaScript: DOM and Dynamic HTML Boriana Koleva Room: C54
Scott Marino MSMIS Summer Session Web Site Design and Authoring Session 8 Scott Marino.
Chapter 14: Dynamic HTML: Event Model Presented by: Colbie Brown CS340 Java Web Development Dr. Gloria Carter Love.
Event JavaScript's interaction with HTML is handled through events that occur when the user or browser manipulates a page. When the page loads, that is.
Internet & World Wide Web How to Program, 5/e. © by Pearson Education, Inc. All Rights Reserved.
CSS1 Dynamic HTML Objects, Collections & Events. CSS2 Introduction Dynamic HTML treats HTML elements as objects. Element’s parameters can be treated as.
Introduction to DHTML. What is DHTML? Dynamic HTML Just as Access is Dynamic Database environment Can have controls that respond to events Can have centralized.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 16 – Dynamic HTML: Event Model Outline 16.1Introduction 16.2Event ONCLICK 16.3Event ONLOAD.
 2003 Prentice Hall, Inc. All rights reserved. Chapter 14 - Dynamic HTML: Event Model Outline 14.1 Introduction 14.2 Event onclick 14.3 Event onload 14.4.
 2004 Prentice Hall, Inc. All rights reserved. 1 Segment – 4 Dynamic HTML & CSS.
1 CSC160 Chapter 7: Events and Event Handlers. 2 Outline Event and event handlers onClick event handler onMouseOver event handler onMouseOut event handler.
Event Handling. Objectives Using event handlers Simulating events Using event-related methods.
Project 8: Reacting to Events Essentials for Design JavaScript Level One Michael Brooks.
WDMD 170 – UW Stevens Point 1 WDMD 170 Internet Languages eLesson: Variables, Functions and Events (NON-Audio version) © Dr. David C. Gibbs WDMD.
7. JavaScript Events. 2 Motto: Do you think I can listen all day to such stuff? –Lewis Carroll.
JavaScript Event Handlers. Introduction An event handler executes a segment of a code based on certain events occurring within the application, such as.
LESSON : EVENTS AND FORM VALIDATION -JAVASCRIPT. EVENTS CLICK.
Event Handlers Events are asynchronous. When an event occurs, JavaScript can execute code in response to the user’s action. This response to the user-initiated.
 2001 Prentice Hall, Inc. All rights reserved. 1 Chapter 14 - Dynamic HTML: Event Model Outline 14.1 Introduction 14.2 Event onclick 14.3 Event onload.
 2000 Deitel & Associates, Inc. All rights reserved. Chapter 15 – Dynamic HTML: Object Model and Collections Outline 15.1Introduction 15.2Object Referencing.
JavaScript and Ajax (JavaScript Environment) Week 6 Web site:
Jozef Goetz contribution, © by Pearson Education, Inc. All Rights Reserved.
Introduction to JavaScript Events Instructor: Sergey Goldman 1.
Chapter 13: DHTML: Object Model and Collections CIS 275—Web Application Development for Business I.
JavaScript and HTML Simple Event Handling 11-May-18.
Introduction to JavaScript Events
Chapter 14: DHTML: Event Model
JAVASCRIPTS AND HTML DOCUMENTS
JavaScript and HTML Simple Event Handling 19-Sep-18.
Chapter 14 - Dynamic HTML: Event Model
Chapter 14 - Dynamic HTML: Event Model
13 JavaScript: Events.
Chapter 13 - Dynamic HTML: Object Model and Collections
Chapter 14 - Dynamic HTML: Event Model
JavaScript and Ajax (JavaScript Events)
JavaScript and HTML Simple Event Handling 26-Aug-19.
JavaScript and HTML Simple Event Handling 4-Oct-19.
Presentation transcript:

Page 1 of 39 Javascript Chapters 13, 14 Vadim Parizher Computer Science Department California State University, Northridge Fall 2003 Slides from text Book by Deitel, Deitel & Nieto These slides are only for use in connection with the CPMP 496EBT course Copying other than for private study strictly prohibitted © Same as the book

Page 2 of 39 Dynamic HTML object model  Provides control over presentation of pages  Access to all elements on the page  Whole web page (elements, forms, frames, tables, etc.) represented in an object hierarchy  HTML elements treated as objects  Attributes of these elements treated as properties of those objects  Objects identified with an ID attribute can be scripted with languages like JavaScript, JScript and VBScript  Simplest way to reference an element is by its ID attribute  Objects have properties  innertext, htmltext, tagname, etc  These properties can be changed by scripting to create dynamic pages.

Page 3 of 39 innertext property  innertext property  Object pText refers to the P element whose ID is set to pText (line 22)  innertext property refers to text contained in element Object Model function start() 12 { 13 alert( pText.innerText ); 14 pText.innerText = "Thanks for coming."; 15 } Welcome to our Web page!

Page 4 of 39 Output

Page 5 of 39 DHTML object model window document history navigator applets all anchors body embeds forms filters images links plugins styleSheets scripts location screen event document plugins object collection Key frames

Page 6 of 39 IE 5 Objects

Page 7 of 39 IE 5 Objects

Page 8 of 39 IE 5 Collections of Objects  Collections are arrays of related objects on a page

Page 9 of 39 IE 5 Collections of Objects

Page 10 of 39 The Navigator Object  navigator object  Supported by Netscape Navigator and Internet Explorer  navigator object contains info about the Web browser viewing the page  navigator.appName contains the name of the application  “Microsoft Internet Explorer”  “Netscape”  Value of navigator.appVersion not a simple integer  Contains other info, such as OS  When using a browser- specific technology  Make provisions for other browsers The navigator Object function start() 12 { 13 if ( navigator.appName == "Microsoft Internet Explorer" ) { if ( navigator.appVersion.substring( 1, 0 ) >= "4" ) 16 document.location = "newIEversion.html"; 17 else 18 document.location = "oldIEversion.html"; 19 } 20 else 21 document.location = "NSversion.html"; 22 } Redirecting your browser to the appropriate page, 29please wait URL of active document

Page 11 of 39 The Event Model  Scripts respond to user actions and change page accordingly  Moving mouse, Scrolling screen, entering keystrokes, etc  ONCLICK event, fires when user clicks mouse  ONLOAD event, fires when element finishes loading successfully and can start a script

Page 12 of 39 ONCLICK DHTML Event Model - ONCLICK alert( "Hi there" ); Click on this text! <INPUT TYPE = "button" VALUE = "Click Me!" 26 ONCLICK = "alert( 'Hi again' )">  Can be invoked with a function or coded inline

Page 13 of 39 ONLICK Output Executes because of script lines Executes because of event handler on line 25

Page 14 of 39 ONLOAD  ONLOAD event in BODY triggers startTimer DHTML Event Model - ONLOAD var seconds = 0; 11 12function startTimer(){ 13 // 1000 milliseconds = 1 second 14 window.setInterval( "updateTime()", 1000 ); 15} 16 17function updateTime(){ 18 seconds++; 19 soFar.innerText = seconds; 20} Seconds you have spent viewing this page so far:

Page 15 of 39 ONLOAD Output

Page 16 of 39 ONERROR  Use ONERROR event can be used to print customer friendly error messages (Browser default msgs are ugly!)  Has three parameters  Type of error  URL of file with error  Line number of error

Page 17 of 39 ONERROR  Function handleError executes when ONERROR event triggered in window object  Return true to event handler to cancel browser’s default response DHTML Event Model - ONERROR // Specify that if an ONERROR event is triggered in the window 12// function handleError should execute 13window.onerror = handleError; 14 15function doThis() { 16 alrrt( "hi" ); // alert misspelled, creates an error 17} 18 19// The ONERROR event passes three values to the function: the 20// name of the error, the url of the file, and the line number. 21function handleError( errType, errURL, errLineNum ) 22{ 23 // Writes to the status bar at the bottom of the window. 24 window.status = "Error: " + errType + " on line " + 25 errLineNum; // Returning a value of true cancels the browser’s reaction. 28 return true; 29} 30 31

Page 18 of 39 ONERROR Output <INPUT ID = "mybutton" TYPE = "button" VALUE = "Click Me!" 37 ONCLICK = "doThis()"> Custom error output

Page 19 of 39 ONMOUSEMOVE event  ONMOUSEMOVE event fires constantly whenever mouse moves  event object contains info about triggered event  srcElement - Pointer to element object that triggered event  offsetX and offsetY location of mouse cursor relative to top- left corner of object in which event triggered

Page 20 of 39  Function updateMo useCoord inates uses properties of event object to track mouse cursor DHTML Event Model - ONMOUSEMOVE event 9 10 function updateMouseCoordinates() 11 { 12 coordinates.innerText = event.srcElement.tagName + 13 " (" + event.offsetX + ", " + event.offsetY + ")"; 14 } (0, 0) 22<IMG SRC = "deitel.gif" STYLE = "position: absolute; top: 100; 23 left: 100"> ONMOUSEMOVE Gives the id coordinates to the block of text between SPAN … /SPAN Current event Element where event occurred Tag of element referenced Locn of mouse cursor (relative to top L corner of object

Page 21 of 39 Output Updated text (keeps changing as you move the mouse)

Page 22 of 39 Properties of the event object

Page 23 of 39 Other Mouse Events  ONMOUSEOVER event  Fires when mouse cursor moves over an element  ONMOUSEOUT event  Fires when mouse cursor leaves the element  Combine events for rollover effect  Pre-load images  Read the code and try this program out!!

Page 24 of 39 ONFOCUS and ONBLUR  Used for form processing  ONFOCUS - fires when an element gains focus  User clicks on form field  User uses Tab key to highlight element  ONBLUR - fires when an element loses focus  ONSUBMIT - fires when a form is submitted  ONRESET - fires when a form is reset

Page 25 of 39 ONFOCUS ONBLUR output  Help msg based on mouse position

Page 26 of 39 Form processing with onfocus DHTML Event Model - ONFOCUS and ONBLUR var helpArray = 12 [ "Enter your name in this input box.", 13 "Enter your address in this input box, " + 14 "in the format 15 "Check this box if you liked our site.", 16 "In this box, enter any comments you would " + 17 "like us to read.", 18 "This button submits the form to the " + 19 "server-side script", 20 "This button clears the form", 21 "This TEXTAREA provides context-sensitive " + 22 "help. Click on any input field or use the TAB " + 23 "key to get more information about the input field." ]; function helpText( messageNum ) 26 { 27 myForm.helpBox.value = helpArray[ messageNum ]; 28 }

Page 27 of 39 Onfocus/onblur Name: <INPUT TYPE = "text" NAME = "name" 36 ONFOCUS = "helpText(0)" ONBLUR = "helpText(6)"> 37 <INPUT TYPE = "text" NAME = " " 38 ONFOCUS = "helpText(1)" ONBLUR = "helpText(6)"> 39Click here if you like this site 40<INPUT TYPE = "checkbox" NAME = "like" ONFOCUS = "helpText(2)" 41 ONBLUR = "helpText(6)"> 42 43Any comments? 44<TEXTAREA NAME = "comments" ROWS = 5 COLS = 45 ONFOCUS = 45 "helpText(3)" ONBLUR = "helpText(6)"> 46<INPUT TYPE = "submit" VALUE = "Submit" ONFOCUS = "helpText(4)" 47 ONBLUR = "helpText(6)"> 48<INPUT TYPE = "reset" VALUE = "Reset" ONFOCUS = "helpText(5)" 49 ONBLUR = "helpText(6)"> 50 51<TEXTAREA NAME = "helpBox" STYLE = "position: absolute; 52 right: 0; top: 0" ROWS = 4 COLS = 45> 53This TEXTAREA provides context-sensitive help. Click on any 54input field or use the TAB key to get more information about the 55input field

Page 28 of 39 ONSUBMIT/ONRESET  ONSUBMIT event  Fires when a form is submitted  ONRESET event  Fires when a form is reset

Page 29 of 39 Onsubmit Onreset DHTML Event Model - ONSUBMIT and ONRESET events var helpArray = 12 [ "Enter your name in this input box.", 13 "Enter your address in this input box, " + 14 "in the format 15 "Check this box if you liked our site.", 16 "In this box, enter any comments you would " + 17 "like us to read.", 18 "This button submits the form to the " + 19 "server-side script", 20 "This button clears the form", 21 "This TEXTAREA provides context-sensitive " + 22 "help. Click on any input field or use the TAB " + 23 "key to get more information about the input field." ]; function helpText( messageNum ) 26 { 27 myForm.helpBox.value = helpArray[ messageNum ]; 28 } function formSubmit() { 31 window.event.returnValue = false; 32

Page 30 of 39 Onsubmit Onreset 33 if ( confirm ( "Are you sure you want to submit?" ) ) 34 window.event.returnValue = true; 35 } function formReset() { 38 window.event.returnValue = false; if ( confirm ( "Are you sure you want to reset?" ) ) 41 window.event.returnValue = true; 42 } <FORM ID = "myForm" ONSUBMIT = "formSubmit()" 50 ONRESET = "formReset()"> 51Name: <INPUT TYPE = "text" NAME = "name" ONFOCUS = "helpText(0)" 52 ONBLUR = "helpText(6)"> 53 <INPUT TYPE = "text" NAME = " " 54 ONFOCUS = "helpText(1)" ONBLUR = "helpText(6)"> 55Click here if you like this site 56<INPUT TYPE = "checkbox" NAME = "like" ONFOCUS = "helpText(2)" 57 ONBLUR = "helpText(6)"> 58 59Any comments? 60<TEXTAREA NAME = "comments" ROWS = 5 COLS = ONFOCUS = "helpText(3)" ONBLUR = "helpText(6)"> 62<INPUT TYPE = "submit" VALUE = "Submit" ONFOCUS = "helpText(4)" 63 ONBLUR = "helpText(6)"> 64<INPUT TYPE = "reset" VALUE = "Reset" ONFOCUS = "helpText(5)"

Page 31 of 39 Onsubmit Onreset 65 ONBLUR = "helpText(6)"> 66 67<TEXTAREA NAME = "helpBox" STYLE = "position: absolute; right:0; 68 top: 0" ROWS = 4 COLS = 45> 69This TEXTAREA provides context-sensitive help. Click on any 70input field or use the TAB key to get more information about the 71input field

Page 32 of 39 Event Bubbling  Event bubbling  Events fired in child elements also “bubble” up to their parent elements for handling  Cancel bubbling using cancelBubb le property of event object  Forgetting to cancel event bubbling when necessary may cause unexpected results in your scripts DHTML Event Model - Event Bubbling function documentClick() 12 { 13 alert( "You clicked in the document" ); 14 } function paragraphClick( value ) 17 { 18 alert( "You clicked the text" ); 19 if ( value ) 20 event.cancelBubble = true; 21 } document.onclick = documentClick; Click here! 30 Click here, too! This why the bubbling occurs. This has registered a document level even processing. ParagraphClick registers a lower level event processing- text within the document object

Page 33 of 39 Output The event has bubbled up to the document level The event has been canceled

Page 34 of 39 Clipboard events

Page 35 of 39 Data binding events

Page 36 of 39 Other Events  Keyboard events  Marquee Events

Page 37 of 39 More mouse events

Page 38 of 39 Miscellaneous events

Page 39 of 39 Miscellaneous events