Course Content
Basic Display and Objects
- a standard JavaScript template
- where is JavaScript placed
- Example: 'hello world!'
- alert, prompt & confirm windows
- example: interactive 'hello world'
- Example: last update, current date
- objects, properties & methods
Syntax and Grammar
- lexical structure
- literal constants
- escape characters
- operators
- variables, scope and arrays
- expressions, conditions, statements
Control Flow and Functions
- conditional statements
- loops and switches
- continue, break and return
- functions: structure
- functions: examples
- functions: recursion
Working with Forms
- accessing form & control objects
- accessing control content
- example: simple text control
- radio button confirmation
Dynamic Form Examples
- dynamic select lists
- background color function
- select list color picker
- radio button color selector
- hexadecimal color picker
Events
- event handlers
- event listeners
- example: time on page
- example: mouse rollover
- timed ad cycler
- the events list
Form Validation
- common validations needed
- validating before submission
- validating on a by entry basis
- validating on a keystroke basis
- multiple field validation
- validating numeric data
String Validation & Date
- brute force string validation
- multiple valid strings
- text analysis
- text formatting
- project: order form
- example: health check
DOM and DHTML
- accessing elements using DOM
- style - color & fontsize changes
- visibility - collapsing text
- visibility - the noscript issue
- content - toggle buttons
- positioning - 'sticky' elements
- object explorer tool
- window dimensions
- object position|dimension
- equalized column heights
- cursor location
- example: popup box
- jumping to a new location
- example: page timeout
- example: click to print
Animation & Multimedia
- scrolling marquees
- flying text
- news scroller
- embedding audio
- transitions & viewports
- presentations & slideshows
Cookies
- required cookie ingredients
- baking a cookie
- eating a cookie
- tossing a cookie
- saving user preferences
- saving a user 'agreement'
User-Defined Objects
- object constructors
- defining methods in constructors
- strictly typed properties
- function constructor methods
- inheritance based prototypes
- subclasses
- objects as associative arrays
- javascript object notation
Regular Expressions
- escaper characters
- character classes
- boundaries & quantifiers
- regular expression modifiers
- testing regular expressions
- using regular expressions
- Canada Post codes
- URLS and files
- e-mail addresses
Menu Systems
- tabbed menus
- autoflagging
- select lists
- dropdown and pullout menus
- floatout, popup & tree menus