onfocus JavaScript (JS) Example: HTML DOM Objects – Event – onfocus JavaScript (JS) Example
onfocus JavaScript (JS) Example: HTML DOM Objects – Event – onfocus JavaScript (JS) Example
Purpose: – Illustrates the JavaScript syntax for the onfocus Event.
Prerequistes:
- Install Visual Web Developer 2008
Syntax: Object.onfocus=”yourjavascriptcode()” – Allows you to know when onfocus event occurs.
Restrictions: None
Notes:
- You can build your own library of syntax examples by using same web site over and over and just add new files to it.
Instructions:
- Use Visual Web Developer 2008
- Create new web site;
- Click File/New Web Site
- Select ASP.NET Website Template
- Select C-Sharp for language
- name of Web Site could be JavaScript_Syntax.
- Add New folder named “HTMLDOMObjects”
- Right-click project name in solution explorer;
- add new folder;
- name of folder should be: HTMLDOMObjects
- Add New subfolder to “HTMLDOMObjects” folder named “DOMEvent”
- Right-click folder named “HTMLDOMObjects” in solution explorer;
- add new folder;
- name of folder should be: DOMEvent
- Add New subfolder to “DOMEvent” subfolder named “EventHandlers”
- Right-click subfolder named “DOMEvent” in solution explorer;
- add new folder;
- name of folder should be: EventHandlers
- Add HTML Page Named onfocus to EventHandlers subfolder
- Right-click EventHandlers subfolder;
- add new item;
- Select HTML Page
- HTML Page name should be onfocus
- Click on copy code in code below to copy code into HTML Page onfocus.htm
- Right-click on HTML page onfocus.htm and select view in browser
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>IdealProgrammer.com: onfocus </title> <!-- *************************************************** * This example is from http://idealprogrammer.com * *************************************************** ***************************************************** DOM Objects ***************************************************** ***************************************************** *** DOM Event - EventHandlers *** ***************************************************** ***************************************************** *** onfocus ***************************************************** SYNTAX: object.onfocus="yourjavascriptcode()" Allows you to know when object has focus. ================================================================= An EXCELLENT tutorial on event basics can be found at: http://www.quirksmode.org/js/introevents.html ================================================================= You can access the following properties thru the event handler: Available Properties altKey Retrieves a value that indicates the state of the ALT key. altLeft Retrieves a value that indicates the state of the left ALT key. clientX Sets or retrieves the x-coordinate of the mouse pointer's position relative to the client area of the window, excluding window decorations and scroll bars. clientY Sets or retrieves the y-coordinate of the mouse pointer's position relative to the client area of the window, excluding window decorations and scroll bars. ctrlLeft Sets or retrieves the state of the left CTRL key. offsetX Sets or retrieves the x-coordinate of the mouse pointer's position relative to the object firing the event. offsetY Sets or retrieves the y-coordinate of the mouse pointer's position relative to the object firing the event. returnValue Sets or retrieves the return value from the event. screenX Sets or retrieves the x-coordinate of the mouse pointer's position relative to the user's screen. screenY Sets or retrieves the y-coordinate of the mouse pointer's position relative to the user's screen. shiftLeft Retrieves the state of the left SHIFT key. srcElement Sets or retrieves the object that fired the event. type Sets or retrieves the event name from the event object. x Sets or retrieves the x-coordinate (in pixels) of the mouse pointer's offset from the closest relatively positioned parent element of the element that fired the event. y Sets or retrieves the y-coordinate (in pixels) of the mouse pointer's offset from the closest relatively positioned parent element of the element that fired the event. The captureEvents() method captures all the events of the event type passed. When you have multiple events to capture, separate them with the pipe, |, character. Here are the types of event you can capture: Event.ABORT Event.BLUR Event.CHANGE Event.CLICK Event.DBLCLICK Event.DRAGDROP Event.ERROR Event.FOCUS Event.KEYDOWN Event.KEYPRESS Event.KEYUP Event.LOAD Event.MOUSEDOWN Event.MOUSEMOVE Event.MOUSEOUT Event.MOUSEOVER Event.MOUSEUP Event.MOVE Event.RESET Event.RESIZE Event.SELECT Event.SUBMIT Event.UNLOAD --> <!-- Script for example 1 --> <script type="text/javascript"> function highlightField(e) { if (!e) var e = window.event // e refers to the event //var string = printInfo(e); this.style.background = "yellow"; } function unhiglightField(e) { if (!e) var e = window.event // e refers to the event //var string = printInfo(e); this.style.background = "white"; } </script> <!-- Script for example 2 --> <script type="text/javascript"> function inlineHighlight(x) { document.getElementById(x).style.background = "yellow" } function inlineunHighlight(x) { document.getElementById(x).style.background = "white" } </script> </head> <body> <h2>Example #1: Demonstrates onfocus for highlighting field using recommended technique for registering events</h2> State: <input type="text" id="state" /> <br /><br /> Country: <input type="text" id="country" /> <br /> <br /> <!-- Script for example 1 --> <script type="text/javascript"> // This is the "traditional" and recommended technique for registering an event // handler because it allows you to separate structure from behavior; the // "inline" method of registering an event within xhtml tags is not // the recommended approach because it blurs structure and behavior. // For complete explanation, please see the following excellent article: // http://www.digital-web.com/articles/separating_behavior_and_structure_2/ // // Note: Using getElementById so registering event will work in FireFox // var state = document.getElementById("state") state.onfocus = highlightField; state.onblur = unhiglightField; var country = document.getElementById("country") country.onfocus = highlightField; country.onblur = unhiglightField; </script> <hr /> <h2>Example #2: Using In-line javascript is simplier, but blurs structure and behavior</h2> Address1: <input type="text" onfocus="inlineHighlight(this.id)" onblur="inlineunHighlight(this.id)" id="Text1" /> <br /> <br /> Address2: <input type="text" onfocus="inlineHighlight(this.id)" onblur="inlineunHighlight(this.id)" id="Text2" /> </body> </html> |