Table of Contents | Previous
| Next
| Index
This chapter contains the event handlers that are used with client-side objects in JavaScript to evoke particular actions.
For general information on event handlers, see the Client-Side JavaScript Guide.
The following table summarizes the event handlers. The name of an event handler is the name of the event, preceded by "on." For example, the event handler for the focus event is onFocus.
Table 3.1 Event handlers
Executes JavaScript code when an abort event occurs; that is, when the user aborts the loading of an image (for example by clicking a link or clicking the Stop button).
onAbort="handlerText"
In the following example, an onAbort handler in an Image object displays a message when the user aborts the image load:
<IMG NAME="aircraft" SRC="f15e.gif" onAbort="alert('You didn\'t get to see the image!')">
event, onError, onLoad
Executes JavaScript code when a blur event occurs; that is, when a form element loses focus or when a window or frame loses focus.
Event handler for |
Button, Checkbox, FileUpload, Layer, Password, Radio, Reset, Select, Submit, Text, Textarea, window
|
Implemented in |
JavaScript 1.0
JavaScript 1.1: event handler of Button, Checkbox, FileUpload, Frame, Password, Radio, Reset, Submit, and window
|
onBlur="handlerText"
The blur event can result from a call to the window.blur method or from the user clicking the mouse on another object or window or tabbing with the keyboard.
For windows, frames, and framesets, onBlur specifies JavaScript code to execute when a window loses focus.
A frame's onBlur event handler overrides an onBlur event handler in the BODY tag of the document loaded into frame.
NOTE:
In JavaScript 1.1, on some platforms placing an onBlur event handler in a
FRAMESET tag has no effect.
Example 1: Validate form input. In the following example, userName is a required text field. When a user attempts to leave the field, the onBlur event handler calls the required function to confirm that userName has a legal value.
<INPUT TYPE="text" VALUE="" NAME="userName" onBlur="required(this.value)">
Example 2: Change the background color of a window. In the following example, a window's onBlur and onFocus event handlers change the window's background color depending on whether the window has focus.
<BODY BGCOLOR="lightgrey" onBlur="document.bgColor='lightgrey'" onFocus="document.bgColor='antiquewhite'">
Example 3: Change the background color of a frame. The following example creates four frames. The source for each frame, onblur2.html has the BODY tag with the onBlur and onFocus event handlers shown in Example 1. When the document loads, all frames are light grey. When the user clicks a frame, the onFocus event handler changes the frame's background color to antique white. The frame that loses focus is changed to light grey. Note that the onBlur and onFocus event handlers are within the BODY tag, not the FRAME tag.
<FRAMESET ROWS="50%,50%" COLS="40%,60%"> <FRAME SRC=onblur2.html NAME="frame1"> <FRAME SRC=onblur2.html NAME="frame2"> <FRAME SRC=onblur2.html NAME="frame3"> <FRAME SRC=onblur2.html NAME="frame4"> </FRAMESET>
The following code has the same effect as the previous code, but is implemented differently. The onFocus and onBlur event handlers are associated with the frame, not the document. The onBlur and onFocus event handlers for the frame are specified by setting the onblur and onfocus properties.
<SCRIPT> function setUpHandlers() { for (var i = 0; i < frames.length; i++) { frames[i].onfocus=new Function("document.bgColor='antiquewhite'") frames[i].onblur=new Function("document.bgColor='lightgrey'") } } </SCRIPT> <FRAMESET ROWS="50%,50%" COLS="40%,60%" onLoad=setUpHandlers()> <FRAME SRC=onblur2.html NAME="frame1"> <FRAME SRC=onblur2.html NAME="frame2"> <FRAME SRC=onblur2.html NAME="frame3"> <FRAME SRC=onblur2.html NAME="frame4"> </FRAMESET>
Example 4: Close a window. In the following example, a window's onBlur event handler closes the window when the window loses focus.
<BODY onBlur="window.close()"> This is some text </BODY>
event, onChange, onFocus
Executes JavaScript code when a change event occurs; that is, when a Select, Text, or Textarea field loses focus and its value has been modified.
onChange="handlerText"
Use onChange to validate data after it is modified by a user.
In the following example, userName is a text field. When a user changes the text and leaves the field, the onChange event handler calls the checkValue function to confirm that userName has a legal value.
<INPUT TYPE="text" VALUE="" NAME="userName" onChange="checkValue(this.value)">
event, onBlur, onFocus
Executes JavaScript code when a click event occurs; that is, when an object on a form is clicked. (A click event is a combination of the MouseDown and MouseUp events).
onClick="handlerText"
For checkboxes, links, radio buttons, reset buttons, and submit buttons, onClick can return false to cancel the action normally associated with a click event.
For example, the following code creates a link that, when clicked, displays a confirm dialog box. If the user clicks the link and then chooses cancel, the page specified by the link is not loaded.
<A HREF = "http://home.netscape.com/" onClick="return confirm('Load Netscape home page?')"> Netscape</A>
If the event handler returns false, the default action of the object is canceled as follows:
NOTE:
In JavaScript 1.1, on some platforms, returning false in an onClick event
handler for a reset button has no effect.
Example 1: Call a function when a user clicks a button. Suppose you have created a JavaScript function called compute. You can execute the compute function when the user clicks a button by calling the function in the onClick event handler, as follows:
<INPUT TYPE="button" VALUE="Calculate" onClick="compute(this.form)">
In the preceding example, the keyword this refers to the current object; in this case, the Calculate button. The construct this.form refers to the form containing the button.
For another example, suppose you have created a JavaScript function called pickRandomURL that lets you select a URL at random. You can use onClick to specify a value for the HREF attribute of the A tag dynamically, as shown in the following example:
<A HREF="" onClick="this.href=pickRandomURL()" onMouseOver="window.status='Pick a random URL'; return true"> Go!</A>
In the above example, onMouseOver specifies a custom message for the browser's status bar when the user places the mouse pointer over the Go! anchor. As this example shows, you must return true to set the window.status property in the onMouseOver event handler.
Example 2: Cancel the checking of a checkbox. The following example creates a checkbox with onClick. The event handler displays a confirm that warns the user that checking the checkbox purges all files. If the user chooses Cancel, onClick returns false and the checkbox is not checked.
<INPUT TYPE="checkbox" NAME="check1" VALUE="check1" onClick="return confirm('This purges all your files. Are you sure?')"> Remove files
event
Executes JavaScript code when a DblClick event occurs; that is, when the user double-clicks a form element or a link.
onDblClick="handlerText"
NOTE:
DblClick is not implemented on the Macintosh.
The following example opens an alert dialog box when a user double-clicks a button:
<form> <INPUT Type="button" Value="Double Click Me!" onDblClick="alert('You just double clicked me!')"> </form>
event
Executes JavaScript code when a DragDrop event occurs; that is, when the user drops an object onto the browser window, such as dropping a file.
onDragDrop="handlerText"
Getting the data property of the DragDrop event requires the UniversalBrowserRead privilege. For information on security, see the Client-Side JavaScript Guide.
The DragDrop event is fired whenever a system item (file, shortcut, and so on) is dropped onto the browser window using the native system's drag and drop mechanism. The normal response for the browser is to attempt to load the item into the browser window. If the event handler for the DragDrop event returns true, the browser loads the item normally. If the event handler returns false, the drag and drop is canceled.
event
Executes JavaScript code when an error event occurs; that is, when the loading of a document or image causes an error.
onError="handlerText"
An error event occurs only when a JavaScript syntax or runtime error occurs, not when a browser error occurs. For example, if you try set window.location.href='notThere.html' and notThere.html does not exist, the resulting error message is a browser error message; therefore, onError would not intercept that message. However, an error event is triggered by a bad URL within an IMG tag or by corrupted image data.
window.onerror applies only to errors that occur in the window containing window.onerror, not in other windows.
onError can be any of the following:
If you write an error-handling function, you have three options for reporting errors:
Example 1: Null event handler. In the following IMG tag, the code onError="null" suppresses error messages if errors occur when the image loads.
<IMG NAME="imageBad1" SRC="corrupt.gif" ALIGN="left" BORDER="2" onError="null">
Example 2: Null event handler for a window. The onError event handler for windows cannot be expressed in HTML. Therefore, you must spell it all lowercase and set it in a SCRIPT tag. The following code assigns null to the onError handler for the entire window, not just the Image object. This suppresses all JavaScript error messages, including those for the Image object.
<SCRIPT> window.onerror=null </SCRIPT> <IMG NAME="imageBad1" SRC="corrupt.gif" ALIGN="left" BORDER="2">
However, if the Image object has a custom onError event handler, the handler would execute if the image had an error. This is because window.onerror=null suppresses JavaScript error messages, not onError event handlers.
<SCRIPT> window.onerror=null function myErrorFunc() { alert("The image had a nasty error.") } </SCRIPT> <IMG NAME="imageBad1" SRC="corrupt.gif" ALIGN="left" BORDER="2" onError="myErrorFunc()">
In the following example, window.onerror=null suppresses all error reporting. Without onerror=null, the code would cause a stack overflow error because of infinite recursion.
<SCRIPT> window.onerror = null; function testErrorFunction() { testErrorFunction(); } </SCRIPT> <BODY onload="testErrorFunction()"> test message </BODY>
Example 3: Error handling function. The following example defines a function, myOnError, that intercepts JavaScript errors. The function uses three arrays to store the message, URL, and line number for each error. When the user clicks the Display Error Report button, the displayErrors function opens a window and creates an error report in that window. Note that the function returns true to suppress the standard JavaScript error dialog.
<SCRIPT> window.onerror = myOnError msgArray = new Array() urlArray = new Array() lnoArray = new Array() function myOnError(msg, url, lno) { msgArray[msgArray.length] = msg urlArray[urlArray.length] = url lnoArray[lnoArray.length] = lno return true }function displayErrors() { win2=window.open('','window2','scrollbars=yes') win2.document.writeln('<B>Error Report</B><P>') for (var i=0; i < msgArray.length; i++) { win2.document.writeln('<B>Error in file:</B> ' + urlArray[i] + '<BR>') win2.document.writeln('<B>Line number:</B> ' + lnoArray[i] + '<BR>') win2.document.writeln('<B>Message:</B> ' + msgArray[i] + '<P>') } win2.document.close() } </SCRIPT><BODY onload="noSuchFunction()"> <FORM> <BR><INPUT TYPE="button" VALUE="This button has a syntax error" onClick="alert('unterminated string)"> <P><INPUT TYPE="button" VALUE="Display Error Report" onClick="displayErrors()"> </FORM>
This example produces the following output:
Error Report Error in file: file:///c%7C/temp/onerror.html Line number: 34 Message: unterminated string literal Error in file: file:///c%7C/temp/onerror.html Line number: 34 Message: missing ) after argument list Error in file: file:///c%7C/temp/onerror.html Line number: 30 Message: noSuchFunction is not defined
Example 4: Event handler calls a function. In the following IMG tag, onError calls the function badImage if errors occur when the image loads.
<SCRIPT> function badImage(theImage) { alert('Error: ' + theImage.name + ' did not load properly.') } </SCRIPT> <FORM> <IMG NAME="imageBad2" SRC="orca.gif" ALIGN="left" BORDER="2" onError="badImage(this)"> </FORM>
event, onAbort, onLoad
Executes JavaScript code when a focus event occurs; that is, when a window, frame, or frameset receives focus or when a form element receives input focus.
Event handler for |
Button, Checkbox, FileUpload, Layer, Password, Radio, Reset, Select, Submit, Text, Textarea, window
|
Implemented in |
JavaScript 1.0
JavaScript 1.1: event handler of Button, Checkbox, FileUpload, Frame, Password, Radio, Reset, Submit, and window
JavaScript 1.2: event handler of Layer
|
onFocus="handlerText"
The focus event can result from a focus method or from the user clicking the mouse on an object or window or tabbing with the keyboard. Selecting within a field results in a select event, not a focus event. onFocus executes JavaScript code when a focus event occurs.
A frame's onFocus event handler overrides an onFocus event handler in the BODY tag of the document loaded into frame.
Note that placing an alert in an onFocus event handler results in recurrent alerts: when you press OK to dismiss the alert, the underlying window gains focus again and produces another focus event.
NOTE:
In JavaScript 1.1, on some platforms, placing an onFocus event handler in a
FRAMESET tag has no effect.
The following example uses an onFocus handler in the valueField Textarea object to call the valueCheck function.
<INPUT TYPE="textarea" VALUE="" NAME="valueField" onFocus="valueCheck()">
See also the examples for onBlur.
event, onBlur, onChange
Executes JavaScript code when a KeyDown event occurs; that is, when the user depresses a key.
onKeyDown="handlerText"
|
Property
|
Description
type |
Indicates the type of event.
| target |
Indicates the object to which the event was originally sent.
| layerX, layerY, pageX, pageY, screenX, screenY |
For an event over a window, these represent the cursor location at the time the event occurred. For an event over a form, they represent the position of the form element.
| which |
Represents the ASCII value of the key pressed. To get the actual letter, number, or symbol of the pressed key, use the String.fromCharCode method. To set this property when the ASCII value is unknown, use the String.charCodeAt method.
| modifiers |
Contains the list of modifier keys held down when the event occurred.
| |
|---|
A KeyDown event always occurs before a KeyPress event. If onKeyDown returns false, no KeyPress events occur. This prevents KeyPress events occurring due to the user holding down a key.
The following example uses the blockA function to evaluate characters entered from the keyboard in the textentry text box. If a user enters either "a" or "A", the function returns false and the text box does not display the value.
<form name="main"> <input name="textentry" type=text size=10 maxlength=10> </form>
<script> function blockA(e) { var keyChar = String.fromCharCode(e.which); if (keyChar == 'A' || keyChar == 'a') return false; }
document.main.textentry.onkeydown = blockA; </script>
In the function, the which property of the event assigns the ASCII value of the key the user presses to the keyChar variable. The if statement evaluates keyChar and returns false for the specified characters.
event, onKeyPress, onKeyUp
Executes JavaScript code when a KeyPress event occurs; that is, when the user presses or holds down a key.
onKeyPress="handlerText"
|
Property
|
Description
type |
Indicates the type of event.
| target |
Indicates the object to which the event was originally sent.
| layerX, layerY, pageX, pageY, screenX, screenY |
For an event over a window, these represent the cursor location at the time the event occurred. For an event over a form, they represent the position of the form element.
| which |
Represents the ASCII value of the key pressed. To get the actual letter, number, or symbol of the pressed key, use the String.fromCharCode method. To set this property when the ASCII value is unknown, use the String.charCodeAt method.
| modifiers |
Contains the list of modifier keys held down when the event occurred.
| |
|---|
A KeyPress event occurs immediately after a KeyDown event only if onKeyDown returns something other than false. A KeyPress event repeatedly occurs until the user releases the key. You can cancel individual KeyPress events.
In this example, the captureEvents method catches keyboard input and the onKeyPress handler calls the blockA function to examine the keystrokes. If the keystrokes are "a" or "z", the function scrolls the Navigator window.
function blockA(e) { var keyChar = String.fromCharCode(e.which); if (keyChar == 'A' || keyChar == 'a') self.scrollBy(10,10);
else if(keyChar == 'Z' || keyChar == 'z') self.scrollBy(-10,-10);
else return false; } document.captureEvents(Event.KEYPRESS); document.onkeypress = blockA;
event, onKeyDown, onKeyUp
Executes JavaScript code when a KeyUp event occurs; that is, when the user releases a key.
onKeyUp="handlerText"
|
Property
|
Description
type |
Indicates the type of event.
| target |
Indicates the object to which the event was originally sent.
| layerX, layerY, pageX, pageY, screenX, screenY |
For an event over a window, these represent the cursor location at the time the event occurred. For an event over a form, they represent the position of the form element.
| which |
Represents the ASCII value of the key pressed. To get the actual letter, number, or symbol of the pressed key, use the String.fromCharCode method. To set this property when the ASCII value is unknown, use the String.charCodeAt method.
| modifiers |
Contains the list of modifier keys held down when the event occurred.
| |
|---|
In this example, the captureEvents method catches keyboard input and the onKeyUp handler calls the Key_Up function. An alert method within the function opens a dialog box to display the value of the keystroke.
function Key_Up(e) { var keyChar = String.fromCharCode(e.which); alert("Hold '" + keyChar +"' again for me, okay?"); } document.onkeyup=Key_Up; document.captureEvents(Event.KEYUP);
event
Executes JavaScript code when a load event occurs; that is, when the browser finishes loading a window or all frames within a FRAMESET tag.
onLoad="handlerText"
Use the onLoad event handler within either the BODY or the FRAMESET tag, for example, <BODY onLoad="...">.
In a FRAMESET and FRAME relationship, an onLoad event within a frame (placed in the BODY tag) occurs before an onLoad event within the FRAMESET (placed in the FRAMESET tag).
For images, the onLoad event handler indicates the script to execute when an image is displayed. Do not confuse displaying an image with loading an image. You can load several images, then display them one by one in the same Image object by setting the object's src property. If you change the image displayed in this way, onLoad executes every time an image is displayed, not just when the image is loaded into memory.
If you specify an onLoad event handler for an Image object that displays a looping GIF animation (multi-image GIF), each loop of the animation triggers the onLoad event, and the event handler executes once for each loop.
You can use the onLoad event handler to create a JavaScript animation by repeatedly setting the src property of an Image object. See Image for information.
Example 1: Display message when page loads. In the following example, the onLoad event handler displays a greeting message after a Web page is loaded.
<BODY onLoad="window.alert("Welcome to the Brave New World home page!")>
Example 2: Display alert when image loads. The following example creates two Image objects, one with the Image constructor and one with the IMG tag. Each Image object has an onLoad event handler that calls the displayAlert function, which displays an alert. For the image created with the IMG tag, the alert displays the image name. For the image created with the Image constructor, the alert displays a message without the image name. This is because the onLoad handler for an object created with the Image constructor must be the name of a function, and it cannot specify parameters for the displayAlert function.
<SCRIPT> imageA = new Image(50,50) imageA.onload=displayAlert imageA.src="cyanball.gif" function displayAlert(theImage) { if (theImage==null) { alert('An image loaded') } else alert(theImage.name + ' has been loaded.') } </SCRIPT><IMG NAME="imageB" SRC="greenball.gif" ALIGN="top" onLoad=displayAlert(this)><BR>
Example 3: Looping GIF animation. The following example displays an image, birdie.gif, that is a looping GIF animation. The onLoad event handler for the image increments the variable cycles, which keeps track of the number of times the animation has looped. To see the value of cycles, the user clicks the button labeled Count Loops.
<SCRIPT> var cycles=0 </SCRIPT> <IMG ALIGN="top" SRC="birdie.gif" BORDER=0 onLoad="++cycles"> <INPUT TYPE="button" VALUE="Count Loops" onClick="alert('The animation has looped ' + cycles + ' times.')">
Example 4: Change GIF animation displayed. The following example uses an onLoad event handler to rotate the display of six GIF animations. Each animation is displayed in sequence in one Image object. When the document loads, !anim0.html is displayed. When that animation completes, the onLoad event handler causes the next file, !anim1.html, to load in place of the first file. After the last animation, !anim5.html, completes, the first file is again displayed. Notice that the changeAnimation function does not call itself after changing the src property of the Image object. This is because when the src property changes, the image's onLoad event handler is triggered and the changeAnimation function is called.
<SCRIPT> var whichImage=0 var maxImages=5 function changeAnimation(theImage) { ++whichImage if (whichImage <= maxImages) { var imageName="!anim" + whichImage + ".gif" theImage.src=imageName } else { whichImage=-1 return } } </SCRIPT><IMG NAME="changingAnimation" SRC="!anim0.gif" BORDER=0 ALIGN="top" onLoad="changeAnimation(this)">
See also the examples for Image.
event, onAbort, onError, onUnload
Executes JavaScript code when a MouseDown event occurs; that is, when the user depresses a mouse button.
onMouseDown="handlerText"
If onMouseDown returns false, the default action (entering drag mode, entering selection mode, or arming a link) is canceled.
Arming is caused by a MouseDown over a link. When a link is armed it changes color to represent its new state.
This example lets users move an image on an HTML page by dragging it with the mouse. Your HTML code defines the image and positions it in a layer called container1. In your JavaScript code, event handlers set the position properties of container1 as users drag the image, creating the animation.
Using style sheets, the image is initially defined and positioned as follows:
<HEAD> <STYLE type="text/css"> #container1 { position:absolute; left:200; top:200} </STYLE> </HEAD>
<BODY> <P ID="container1"> <img src="backgrnd.gif" name="myImage" width=96 height=96> </P> </BODY>
In the previous HTML code, the ID attribute for the P element which contains the image is set to container1, making container1 a unique identifier for the paragraph and the image. The STYLE tag creates a layer for container1 and positions it.
The following JavaScript code defines onMouseDown, onMouseUp, and onMouseMove event handlers:
<SCRIPT> container1.captureEvents(Event.MOUSEUP|Event.MOUSEDOWN); container1.onmousedown=DRAG_begindrag; container1.onmouseup=DRAG_enddrag; var DRAG_lastX, DRAG_lastY, DRAG_dragging; function DRAG_begindrag(e) { if (e.which == 1) { window.captureEvents(Event.MOUSEMOVE); window.onmousemove=DRAG_drag; DRAG_lastX=e.pageX; DRAG_lastY=e.pageY; DRAG_dragging=true; return false; } else { /*Do any right mouse button processing here*/ return true; } } function DRAG_enddrag(e) { if (e.which == 1) { window.releaseEvents(Event.MOUSEMOVE); window.onmousemove=null DRAG_dragging=false; return false; } else { /*Do any right mouse button processing here*/ return true; } } function DRAG_drag(e) { if (DRAG_dragging) { /*This function called only if MOUSEMOVEs are captured*/ moveBy(e.pageX-DRAG_lastX, e.pageY-DRAG_lastY); DRAG_lastX = e.pageX; DRAG_lastY = e.pageY; return false; } else { return true; } } </SCRIPT>
In the previous code, the captureEvents method captures MouseUp and MouseDown events. The DRAG_begindrag and DRAG_enddrag functions are respectively called to handle these events.
When a user presses the left mouse button, the DRAG_begindrag function starts capturing MouseMove events and tells the DRAG_drag function to handle them. It then assigns the value of the MouseDown event's pageX property to DRAG_lastX, the value of the pageY property to DRAG_lastY, and true to DRAG_dragging.
The DRAG_drag function evaluates DRAG_dragging to make sure the MouseMove event was captured by DRAG_begindrag, then it uses the moveBy method to position the object, and reassigns values to DRAG_lastX and DRAG_lastY.
When the user releases the left mouse button, the DRAG_enddrag function stops capturing MouseMove events. DRAG_enddrag then makes sure no other functions are called by setting onmousemove to Null and DRAG_dragging to false.
event
Executes JavaScript code when a MouseMove event occurs; that is, when the user moves the cursor.
onMouseMove="handlerText"
Because mouse movement happens so frequently, by default, onMouseMove is not an event of any object. You must explicitly set it to be associated with a particular object.
The MouseMove event is sent only when a capture of the event is requested by an object. For information on events, see the Client-Side JavaScript Guide.
See the examples for onMouseDown.
event, document.captureEvents
Executes JavaScript code when a MouseOut event occurs; that is, each time the mouse pointer leaves an area (client-side image map) or link from inside that area or link.
onMouseOut="handlerText"
If the mouse moves from one area into another in a client-side image map, you'll get onMouseOut for the first area, then onMouseOver for the second.
Area tags that use onMouseOut must include the HREF attribute within the AREA tag.
You must return true within the event handler if you want to set the status or defaultStatus properties with onMouseOver.
See the examples for Link.
event, onMouseOver
Executes JavaScript code when a MouseOver event occurs; that is, once each time the mouse pointer moves over an object or area from outside that object or area.
onMouseOver="handlerText"
If the mouse moves from one area into another in a client-side image map, you'll get onMouseOut for the first area, then onMouseOver for the second.
Area tags that use onMouseOver must include the HREF attribute within the AREA tag.
You must return true within the event handler if you want to set the status or defaultStatus properties with onMouseOver.
By default, the HREF value of an anchor displays in the status bar at the bottom of the browser when a user places the mouse pointer over the anchor. In the following example, onMouseOver provides the custom message "Click this if you dare."
<A HREF="http://home.netscape.com/" onMouseOver="window.status='Click this if you dare!'; return true"> Click me</A>
See onClick for an example of using onMouseOver when the A tag's HREF attribute is set dynamically.
See also the examples for Link.
event, onMouseOut
Executes JavaScript code when a MouseUp event occurs; that is, when the user releases a mouse button.
onMouseUp="handlerText"
If onMouseUp returns false, the default action is canceled. For example, if onMouseUp returns false over an armed link, the link is not triggered. Also, if MouseUp occurs over an unarmed link (possibly due to onMouseDown returning false), the link is not triggered.
NOTE:
Arming is caused by a MouseDown over a link. When a link is armed it changes
color to represent its new state.
See the examples for onMouseDown.
event
Executes JavaScript code when a move event occurs; that is, when the user or script moves a window or frame.
onMove="handlerText"
In this example, the open_now function creates the myWin window and captures Move events. The onMove handler calls another function which displays a message when a user moves myWin.
function open_now(){ var myWin; myWin=window.open("","displayWindow","width=400,height=400,menubar=no, location=no,alwaysRaised=yes"); var text="<html><head><title>Test</title></head>" +"<body bgcolor=white><h1>Please move this window</h1></body>" +"</html>"; myWin.document.write(text); myWin.captureEvents(Event.MOVE); myWin.onmove=fun2; }
function fun2(){ alert("Hey you moved me!"); this.focus(); //'this' points to the current object }
event
Executes JavaScript code when a reset event occurs; that is, when a user resets a form (clicks a Reset button).
onReset="handlerText"
The following example displays a Text object with the default value "CA" and a reset button. If the user types a state abbreviation in the Text object and then clicks the reset button, the original value of "CA" is restored. The form's onReset event handler displays a message indicating that defaults have been restored.
<FORM NAME="form1" onReset="alert('Defaults have been restored.')"> State: <INPUT TYPE="text" NAME="state" VALUE="CA" SIZE="2"><P> <INPUT TYPE="reset" VALUE="Clear Form" NAME="reset1"> </FORM>
event, Form.reset, Reset
Executes JavaScript code when a resize event occurs; that is, when a user or script resizes a window or frame.
onResize="handlerText"
This event is sent after HTML layout completes within the new window inner dimensions. This allows positioned elements and named anchors to have their final sizes and locations queried, image SRC properties can be restored dynamically, and so on.
In this example, the open_now function creates the myWin window and captures Resize events. The onResize handler calls the alert_me function which displays a message when a user resizes myWin.
function open_now(){ var myWin; myWin=window.open("","displayWin","width=400,height=300,resizable=yes, menubar=no,location=no,alwaysRaised=yes"); var text="<html><head><title>Test</title></head>" +"<body bgcolor=white><h1>Please resize me</h1></body>" +"</html>"; myWin.document.write(text); myWin.captureEvents(Event.RESIZE); myWin.onresize=alert_me; }
function alert_me(){ alert("You resized me! \nNow my outer width: " + this.outerWidth + "\n and my outer height: " +this.outerHeight); this.focus(); }
event
Executes JavaScript code when a select event occurs; that is, when a user selects some of the text within a text or textarea field.
onSelect="handlerText"
The following example uses onSelect in the valueField Text object to call the selectState function.
<INPUT TYPE="text" VALUE="" NAME="valueField" onSelect="selectState()">
event
Executes JavaScript code when a submit event occurs; that is, when a user submits a form.
onSubmit="handlerText"
Submitting a form to a mailto: or news: URL requires the UniversalSendMail privilege. For information on security, see the Client-Side JavaScript Guide.
You can use onSubmit to prevent a form from being submitted; to do so, put a return statement that returns false in the event handler. Any other returned value lets the form submit. If you omit the return statement, the form is submitted.
In the following example, onSubmit calls the validate function to evaluate the data being submitted. If the data is valid, the form is submitted; otherwise, the form is not submitted.
<FORM onSubmit="return validate(this)"> ... </FORM>
See also the examples for Form.
event, Submit, Form.submit
Executes JavaScript code when an unload event occurs; that is, when the user exits a document.
onUnload="handlerText"
Use onUnload within either the BODY or the FRAMESET tag, for example, <BODY onUnload="...">.
In a frameset and frame relationship, an onUnload event within a frame (placed in the BODY tag) occurs before an onUnload event within the frameset (placed in the FRAMESET tag).
In the following example, onUnload calls the cleanUp function to perform some shutdown processing when the user exits a Web page:
<BODY onUnload="cleanUp()">
onLoad
For general information on event handlers, see the Client-Side JavaScript Guide.
For information about the event object, see event.
Table of Contents | Previous
| Next
| Index
Last Updated: 05/28/99 12:01:01
Copyright (c) 1999
Netscape Communications Corporation
|