Pure JavaScript

Second Edition

R. Allen Wyke
Jason D. Gilliam
Charlton Ting
Sean Michaels

Image
201 West 103rd Street, Indianapolis, Indiana 46290

Pure JavaScript, Second Edition

Copyright © 2002 by Sams Publishing

Library of Congress Catalog Card Number: 00-111512

Printed in the United States of America

First Printing: August 2001

04  03  02  01                          4  3  2  1

Trademarks

Warning and Disclaimer

Overview

 

 

Introduction

PART I

 

A PROGRAMMER’S OVERVIEW OF JAVASCRIPT

1

 

What Is JavaScript to a Programmer?

2

 

Details of the Language

PART II

 

PROGRAMMING IN JAVASCRIPT

3

 

Programming Techniques

4

 

Client-Side Scripting

5

 

JavaScript on the Server-Side

6

 

Windows Scripting

PART III

 

JAVASCRIPT REFERENCE

7

 

Core Language

8

 

Client-Side

9

 

Server-Side

 

 

INDEX

 

 

CD-ROM

10

 

DOM Core

11

 

DOM HTML

12

 

DOM Events

13

 

DOM CSS

14

 

JScript RunTime

15

 

Windows Script Host

Contents

INTRODUCTION

PART I   A PROGRAMMER’S OVERVIEW OF JAVASCRIPT

1   WHAT IS JAVASCRIPT TO A PROGRAMMER?

Welcome to JavaScript

Object-Based Technology

Object-Oriented Programming

Object Orientation of JavaScript

Object Access

Modular Programming

Security

What Security Measures Are in Place?

Data Tainting

Signed Scripts

Advantages of JavaScript

Platform Independence

Client-Side and Server-Side Versatility

When to Use JavaScript

Web Page Enhancements

Interactive E-Mail

Web-Based Applications

Windows Scripting

JavaScript Resources

General Information

Reference

Newsgroups

Moving On

2   DETAILS OF THE LANGUAGE

Things to Know about JavaScript Syntax

The Semicolon

Using the <script> Tag

Comments

Data Types and Variables

Numbers

Strings

Other Data Types

What to Know About Variables

Arrays

Operators

Arithmetic

String

Assignment

Logical

Comparison

Conditional

Bitwise

Precedence

Loops and Conditionals

Conditionals

Loops

Functions

Syntax

Call By Value Versus Call By Reference

Returning Values

Functions as Objects

Moving On

PART II   PROGRAMMING IN JAVASCRIPT

3   PROGRAMMING TECHNIQUES

Pattern Matching

Defining the RegExp Object

Defining Patterns

Testing for Pattern Matches

Events and Event Handlers

Events

Event Handlers

Timers

Exceptions

throw

try…catch

Runtime Errors

finally

Debugging

Microsoft Script Debugger

The alert() Method

Moving On

4   CLIENT-SIDE SCRIPTING

Supporting Browsers and Their Issues

Netscape Navigator

Internet Explorer

Opera

HotJava

Extended Browser Functionality

Built-In Functions for Control

LiveConnect

Form Processing

The Forms Array

Accessing and Writing Information

Form Example

Cookie Handling

Reading Cookies

Writing Cookies

Windows in Action

The Parent/Child Relationship

Creating Windows

Limitations

Window Example

Dynamic Documents

The Old Way

The New Way

Cross Browser DHTML

XML-Based User Interface Language (XUL)

What Is XUL?

File Structure and Syntax

XUL and JavaScript

XUL Example

Moving On

5   JAVASCRIPT ON THE SERVER-SIDE

How Does Server-Side Differ from Client-Side?

Server-Side Environments

Programming Differences

Netscape’s Server-Side JavaScript

Server Support

Compiling Your Scripts

The Server Side JavaScript Application Manager

Microsoft’s ASP Environment

Server Support

Using the JScript Language

Checking Your Environment

Uses of Server-Side JavaScript

Within Enterprise Server

Within IIS

Moving On

6   WINDOWS SCRIPTING

Windows Script Host

Architecture

Object Model

Benefits and Limitations

Windows Script Components

Objects

Methods of Executing Scripts

Remote Scripting

How to Use Remote Scripting

Remote Scripting Example

Moving On

PART III   JAVASCRIPT REFERENCE

7   CORE LANGUAGE

@_alpha

@_jscript

@_jscript_build

@_jscript_version

@_mac

@_mc680x0

@_PowerPC

@_win16

@_win32

@_x86

@cc_on

@if

@set

- (Subtraction)

- (Unary Negation)

-- (Decrement)

! (Logical NOT)

!= (Not Equal)

!== (Non-Identity)

% (Modulus)

%= (Modulus Assignment)

& (Bitwise AND)

&& (Logical AND)

&= (Bitwise AND Assignment)

* (Multiplication)

*= (Multiplication Assignment)

, (Comma)

/ (Division)

/* / (Multi-line Comment)

// (Comment)

/= (Division Assignment)

?: (Conditional)

ˆ (Bitwise Exclusive OR)

ˆ= (Bitwise Exclusive OR Assignment)

| (Bitwise OR)

|| (Logical OR)

|= (Bitwise OR Assignment)

~ (Bitwise NOT)

+ (Addition)

++ (Increment)

+= (Addition Assignment)

< (Less Than)

<< (Shift Left)

<<= (Shift Left Assignment)

<= (Less Than or Equal)

= (Assignment)

-= (Subtraction Assignment)

== (Equal)

=== (Identity)

> (Greater Than)

>= (Greater Than or Equal)

>> (Shift Right with Sign)

>>= (Shift Right with Sign Assignment)

>>> (Shift Right Zero Fill)

>>>= (Shift Right Zero Fill Assignment)

abstract

ActiveXObject

Arguments

Arguments.callee

Arguments.caller

Arguments.length

Array

Array.concat( )

Array.constructor

Array.index

Array.input

Array.join()

Array.lastIndex

Array.length

Array.pop()

Array.prototype

Array.push()

Array.reverse()

Array.shift()

Array.slice()

Array.sort()

Array.splice()

Array.toSource()

Array.toString()

Array.unshift()

Array.unwatch()

Array.valueOf()

Array.watch()

Automation

boolean

Boolean

Boolean.constructor

Boolean.prototype

Boolean.toSource()

Boolean.toString()

Boolean.unwatch()

Boolean.valueOf()

Boolean.watch()

break

byte

case

char

class

const

continue

Date

Date.constructor

Date.getDate()

Date.getDay()

Date.getFullYear()

Date.getHours()

Date.getMilliseconds()

Date.getMinutes()

Date.getMonth()

Date.getSeconds()

Date.getTime()

Date.getTimezoneOffset()

Date.getUTCDate()

Date.getUTCDay()

Date.getUTCFullYear()

Date.getUTCHours()

Date.getUTCMilliseconds()

Date.getUTCMinutes()

Date.getUTCMonth()

Date.getUTCSeconds()

Date.getVarDate()

Date.getYear()

Date.parse()

Date.prototype

Date.setDate()

Date.setFullYear()

Date.setHours()

Date.setMilliseconds()

Date.setMinutes()

Date.setMonth()

Date.setSeconds()

Date.setTime()

Date.setUTCDate()

Date.setUTCFullYear()

Date.setUTCHours()

Date.setUTCMilliseconds()

Date.setUTCMinutes()

Date.setUTCMonth()

Date.setUTCSeconds()

Date.setYear()

Date.toGMTString()

Date.toLocaleString()

Date.toSource()

Date.toString()

Date.toUTCString()

Date.unwatch()

Date.UTC()

Date.valueOf()

Date.watch

debugger

decodeURI()

decodeURIComponent()

default

delete

do

do…while

double

else

encodeURI()

encodeURIComponent()

enum

Enumerator

Enumerator.atEnd()

Enumerator.item()

Enumerator.moveFirst()

Enumerator.moveNext()

Error

Error.description

Error.message

Error.name

Error.number

escape()

eval()

export

extends

false

final

float

for

for…in

function

Function()

Function.apply()

Function.arguments

Function.arity

Function.call()

Function.callee

Function.caller

Function.constructor

Function.length

Function.prototype

Function.toSource()

Function.toString()

Function.valueOf()

GetObject

Global

Global.decodeURI()

Global.decodeURIComponent()

Global.encodeURI()

Global.encodeURIComponent()

Global.escape()

Global.eval()

Global.Infinity

Global.isFinite()

Global.isNaN()

Global.NaN

Global.Number()

Global.parseFloat()

Global.parseInt()

Global.String()

Global.unescape()

Global.undefined

goto

if

if…else

implements

import

in

Infinity

instanceof

int

interface

isFinite()

isNaN()

java

javaArray

javaArray.length

javaArray.toString

javaClass

javaObject

javaPackage

JSException

JSException.getWrappedException()

JSObject

JSObject.call()

JSObject.equals()

JSObject.eval()

JSObject.getMember()

JSObject.getSlot()

JSObject.getWindow()

JSObject.removeMember()

JSObject.setMember()

JSObject.setSlot()

JSObject.toString()

label

long

Math()

Math.abs()

Math.acos()

Math.asin()

Math.atan()

Math.atan2()

Math.ceil()

Math.cos()

Math.E

Math.exp()

Math.floor()

Math.LN10

Math.LN2

Math.log()

Math.LOG10E

Math.LOG2E

Math.max()

Math.min()

Math.PI

Math.pow()

Math.random()

Math.round()

Math.sin()

Math.sqrt()

Math.SQRT1_2

Math.SQRT2

Math.tan()

Math.toSource()

Math.toString()

Math.unwatch()

Math.watch()

NaN

native

netscape

new

null

Number()

Number()

Number.constructor

Number.MAX_VALUE

Number.MIN_VALUE

Number.NaN

Number.NEGATIVE_INFINITY

Number.POSITIVE_INFINITY

Number.prototype

Number.toExponential()

Number.toFixed()

Number.toLocaleString()

Number.toPrecision()

Number.toSource()

Number.toString()

Number.unwatch()

Number.valueOf()

Number.watch()

Object()

Object.constructor

Object.eval()

Object.prototype

Object.toSource()

Object.toString()

Object.unwatch()

Object.valueOf()

Object.watch()

package

Packages

Packages.className

Packages.java

Packages.netscape

Packages.sun

parseFloat()

parseInt()

private

protected

public

RegExp()

RegExp,$*

RegExp.$&

RegExp,$_

RegExp.$`

RegExp.$’

RegExp.$+

RegExp.$1,$2,...$9

RegExp.constructor()

RegExp.compile()

RegExp.exec()

RegExp.global

RegExp.ignoreCase

RegExp.input

RegExp.lastIndex

RegExp.lastMatch

RegExp.lastParen

RegExp.leftContext

RegExp.multiline

RegExp.prototype

RegExp.rightContext

RegExp.source

RegExp.test()

RegExp.toSource()

RegExp.toString()

RegExp.unwatch()

RegExp.valueOf()

RegExp.watch()

return

ScriptEngine

ScriptEngineBuildVersion

ScriptEngineMajorVersion

ScriptEngineMinorVersion

short

static

String (Function)

String (Object)

String.anchor()

String.big()

String.blink()

String.bold()

String.charAt()

String.charCodeAt()

String.concat()

String.constructor

String.fixed()

String.fontcolor()

String.fontsize()

String.fromCharCode()

String.indexOf()

String.italics()

String.lastIndexOf()

String.length

String.link()

String.localeCompare()

String.match()

String.prototype

String.replace()

String.search()

String.slice()

String.small()

String.split()

String.strike()

String.sub()

String.substr()

String.substring()

String.sup()

String.toLocaleLowerCase()

String.toLocaleUpperCase()

String.toLowerCase()

String.toSource()

String.toString()

String.toUpperCase()

String.unwatch()

String.valueOf()

String.watch()

sun

super

switch

synchronized

this

throw

throws

transient

true

try…catch…finally

typeof

undefined

unescape()

var

VBArray

VBArray.dimensions()

VBArray.getItem()

VBArray.lbound()

VBArray.toArray()

VBArray.ubound()

void

volatile

while

with

8   CLIENT-SIDE

Anchor

Anchor.name

Anchor.text

Anchor.unwatch()

Anchor.watch()

Anchor.x

Anchor.y

Applet

Area

Area.handleEvent()

Area.hash

Area.host

Area.hostname

Area.href

Area.onDblClick

Area.onMouseOut

Area.onMouseOver

Area.pathname

Area.port

Area.protocol

Area.search

Area.target

Area.unwatch()

Area.watch()

Button

Button.blur()

Button.click()

Button.focus()

Button.form

Button.handleEvent()

Button.name

Button.onBlur

Button.onClick

Button.onFocus

Button.onMouseDown

Button.onMouseUp

Button.type

Button.unwatch()

Button.value

Button.watch()

Checkbox

Checkbox.blur()

Checkbox.checked

Checkbox.click()

Checkbox.defaultChecked

Checkbox.focus()

Checkbox.form

Checkbox.handleEvent()

Checkbox.name

Checkbox.onBlur

Checkbox.onClick

Checkbox.onFocus

Checkbox.type

Checkbox.unwatch()

Checkbox.value

Checkbox.watch()

Document

document.alinkColor

document.all

document.all.item()

document.all.tags()

document.anchors

document.anchors.length

document.applets

document.applets.length

document.bgColor

document.captureEvents()

document.classes

document.close()

document.contextual()

document.cookie

document.domain

document.embeds

document.embeds.length

document.fgColor

document.formName

document.forms

document.forms.length

document.getSelection()

document.handleEvent()

document.ids

document.images

document.images.length

document.lastModified

document.layers

document.layers.length

document.linkColor

document.links

document.links.length

document.onClick

document.onDblClick

document.onKeyDown

document.onKeyPress

document.onKeyUp

document.onLoad

document.onMouseDown

document.onMouseUp

document.onUnLoad

document.open()

document.plugins

document.plugins.length

document.referrer

document.releaseEvents()

document.routeEvent()

document.tags

document.title

document.unwatch()

document.URL

document.vlinkColor

document.watch()

document.write()

document.writeln()

Embed

Event

event.data

event.height

event.layerX

event.layerY

event.modifiers

event.pageX

event.pageY

event.screenX

event.screenY

event.target

event.type

event.unwatch()

event.watch()

event.which

event.width

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

FileUpload

FileUpload.blur()

FileUpload.focus()

FileUpload.form

FileUpload.handleEvent()

FileUpload.name

FileUpload.onBlur

FileUpload.onChange

FileUpload.onFocus

FileUpload.select()

FileUpload.type

FileUpload.unwatch()

FileUpload.value

FileUpload.watch()

Form

Form.action

Form.elements

Form.elements.length

Form.encoding

Form.handleEvent()

Form.length

Form.method

Form.name

Form.onReset

Form.onSubmit

Form.reset()

Form.submit()

Form.target

Form.unwatch()

Form.watch()

Frame

Frame.blur()

Frame.clearInterval()

Frame.clearTimeout()

Frame.document

Frame.focus()

Frame.frames

Frame.length

Frame.name

Frame.onBlur

Frame.onFocus

Frame.onMove

Frame.onResize

Frame.parent

Frame.print()

Frame.self

Frame.setInterval()

Frame.setTimeout()

Frame.top

Frame.unwatch()

Frame.watch()

Frame.window

Hidden

Hidden.form

Hidden.name

Hidden.type

Hidden.unwatch()

Hidden.value

Hidden.watch()

History

History.back()

History.current

History.forward()

History.go()

History.length

History.next

History.previous

History.unwatch()

History.watch()

Image

Image.border

Image.complete

Image.handleEvent()

Image.height

Image.hspace

Image.lowsrc

Image.name

Image.onAbort

Image.onError

Image.onKeyDown

Image.onKeyPress

Image.onKeyUp

Image.onLoad

Image.src

Image.unwatch()

Image.vspace

Image.watch()

Image.width

Layer

Layer.above

Layer.background

Layer.below

Layer.bgColor

Layer.captureEvents()

Layer.clip.bottom

Layer.clip.height

Layer.clip.left

Layer.clip.right

Layer.clip.top

Layer.clip.width

Layer.document

Layer.handleEvent()

Layer.left

Layer.load()

Layer.moveAbove()

Layer.moveBelow()

Layer.moveBy()

Layer.moveTo()

Layer.moveToAbsolute()

Layer.name

Layer.onBlur

Layer.onFocus

Layer.onLoad

Layer.onMouseOut

Layer.onMouseOver

Layer.pageX

Layer.pageY

Layer.parentLayer

Layer.releaseEvents()

Layer.resizeBy()

Layer.resizeTo()

Layer.routeEvent()

Layer.siblingAbove

Layer.siblingBelow

Layer.src

Layer.top

Layer.unwatch()

Layer.visibility

Layer.watch()

Layer.zIndex

Link

Link.handleEvent()

Link.hash

Link.host

Link.hostname

Link.href

Link.onClick

Link.onDblClick

Link.onKeyDown

Link.onKeyPress

Link.onKeyUp

Link.onMouseDown

Link.onMouseOut

Link.onMouseOver

Link.onMouseUp

Link.pathname

Link.port

Link.protocol

Link.search

Link.target

Link.text

Link.unwatch()

Link.watch()

Location

Location.hash

Location.host

Location.hostname

Location.href

Location.pathname

Location.port

Location.protocol

Location.reload()

Location.replace()

Location.search

Location.unwatch()

Location.watch()

MimeType

MimeType.description

MimeType.enabledPlugin

MimeType.suffixes

MimeType.type

MimeType.unwatch()

MimeType.watch()

navigator

navigator.appCodeName

navigator.appName

navigator.appVersion

navigator.javaEnabled()

navigator.language

navigator.mimeTypes

navigator.platform

navigator.plugins

navigator.plugins.refresh()

navigator.preference()

navigator.taintEnabled()

navigator.userAgent

navigator.unwatch()

navigator.watch()

Option

Option.defaultSelected

Option.selected

Option.text

Option.unwatch()

Option.value

Option.watch()

Password

Password.blur()

Password.defaultValue

Password.focus()

Password.form

Password.handleEvent()

Password.name

Password.onBlur

Password.onFocus

Password.select()

Password.type

Password.unwatch()

Password.value

Password.watch()

Plugin

Plugin.description

Plugin.filename

Plugin.length

Plugin.name

Plugin.unwatch()

Plugin.watch()

Radio

Radio.blur()

Radio.checked

Radio.click()

Radio.defaultChecked

Radio.focus()

Radio.form

Radio.handleEvent()

Radio.name

Radio.onBlur

Radio.onClick

Radio.onFocus()

Radio.type

Radio.unwatch()

Radio.value

Radio.watch()

Reset

Reset.blur()

Reset.click()

Reset.focus()

Reset.form

Reset.handleEvent()

Reset.name

Reset.onBlur

Reset.onClick

Reset.onFocus

Reset.type

Reset.unwatch()

Reset.value

Reset.watch()

screen

screen.availHeight

screen.availLeft

screen.availTop

screen.availWidth

screen.colorDepth

screen.height

Screen.pixelDepth

screen.unwatch()

screen.watch()

screen.width

Select

Select.blur()

Select.focus()

Select.form

Select.handleEvent()

Select.length

Select.name

Select.onBlur

Select.onChange

Select.onFocus

Select.options

Select.options.length

Select.options.selectedIndex

Select.options.value

Select.selectedIndex

Select.type

Select.unwatch()

Select.watch()

Style

Style.align

Style.backgroundColor

Style.backgroundImage

Style.borderBottomWidth

Style.borderColor

Style.borderLeftWidth

Style.borderRightWidth

Style.borderStyle

Style.borderTopWidth

Style.borderWidths()

Style.clear

Style.color

Style.display

Style.fontFamily

Style.fontSize

Style.fontStyle

Style.fontWeight

Style.lineHeight

Style.listStyleType

Style.marginBottom

Style.marginLeft

Style.marginRight

Style.margins()

Style.marginTop

Style.paddingBottom

Style.paddingLeft

Style.paddingRight

Style.paddings()

Style.paddingTop

Style.textAlign

Style.textDecoration

Style.textIndent

Style.textTransform

Style.unwatch()

Style.watch()

Style.whiteSpace

Style.width

Submit

Submit.blur()

Submit.click()

Submit.focus()

Submit.form

Submit.handleEvent()

Submit.name

Submit.onBlur

Submit.onClick

Submit.onFocus

Submit.type

Submit.unwatch()

Submit.value

Submit.watch()

taint()

Text

Text.blur()

Text.defaultValue

Text.focus()

Text.form

Text.handleEvent()

Text.name

Text.onBlur

Text.onChange

Text.onFocus

Text.onSelect

Text.select()

Text.type

Text.unwatch()

Text.value

Text.watch()

Textarea

Textarea.blur()

Textarea.defaultValue

Textarea.focus()

Textarea.form

Textarea.handleEvent()

Textarea.name

Textarea.onBlur

Textarea.onChange

Textarea.onFocus

Textarea.onKeyDown

Textarea.onKeyPress

Textarea.onKeyUp

Textarea.onSelect

Textarea.select()

Textarea.type

Textarea.unwatch()

Textarea.value

Textarea.watch()

untaint()

Window

window.alert()

window.atob()

window.back()

window.blur()

window.btoa()

window.captureEvents()

window.clearInterval()

window.clearTimeout()

window.close()

window.closed

window.confirm()

window.crypto

window.crypto.random()

window.crypto.signText()

window.defaultStatus

window.disableExternalCapture()

window.document

window.enableExternalCapture()

window.find()

window.focus()

window.forward()

window.frames

window.frames.length

window.handleEvent()

window.history

window.home()

window.innerHeight

window.innerWidth

window.length

window.location

window.locationbar

window.locationbar.visible

window.menubar

window.menubar.visible

window.moveBy()

window.moveTo()

window.name

window.offscreenBuffering

window.onBlur

window.onDragDrop

window.onError

window.onFocus

window.onLoad

window.onMove

window.onResize

window.onUnload

window.open()

window.opener

window.outerHeight

window.outerWidth

window.pageXOffset

window.pageYOffset

window.parent

window.personalbar

window.personalbar.visible

window.print()

window.prompt()

window.releaseEvents()

window.resizeBy()

window.resizeTo()

window.routeEvent()

window.screenX

window.screenY

window.scroll()

window.scrollbars

window.scrollbars.visible

window.scrollBy()

window.scrollTo()

window.self

window.setHotKeys()

window.setInterval()

window.setResizable()

window.setTimeout()

window.setZOptions()

window.status

window.statusbar

window.statusbar.visible

window.stop()

window.toolbar

window.toolbar.visible

window.top

window.unwatch()

window.watch()

window.window

9   SERVER-SIDE

addClient()

addResponseHeader()

Application

Application.Application_OnEnd

Application.Application_OnStart

Application.Contents

Application.Contents.Remove()

Application.Contents.RemoveAll()

Application.Lock()

Application.StaticObjects

Application.Unlock()

ASPError

ASPError.ASPCode

ASPError.ASPDescription

ASPError.Category

ASPError.Column

ASPError.Description

ASPError.File

ASPError.Line

ASPError.Number

ASPError.Source

blob() (Function)

blob (Object)

blob.blobImage()

blob.blobLink()

callC()

client

client.destroy()

client.expiration()

client.property

client.unwatch()

client.watch()

Connection

Connection.beginTransaction()

Connection.commitTransaction()

Connection.connected()

Connection.cursor()

Connection.execute()

Connection.majorErrorCode()

Connection.majorErrorMessage()

Connection.minorErrorCode()

Connection.minorErrorMessage()

Connection.prototype

Connection.release()

Connection.rollbackTransaction()

Connection.SQLTable()

Connection.storedProc()

Connection.toString()

Connection.unwatch()

Connection.watch()

Cursor

Cursor.close()

Cursor.columnName

Cursor.columnName()

Cursor.columns()

Cursor.deleteRow()

Cursor.insertRow()

Cursor.next()

Cursor.prototype

Cursor.unwatch()

Cursor.updateRow()

Cursor.watch()

database

database.beginTransaction()

database.commitTransaction()

database.connect()

database.connected()

database.cursor()

database.disconnect()

database.execute()

database.majorErrorCode()

database.majorErrorMessage()

database.minorErrorCode()

database.minorErrorMessage()

database.prototype

database.rollbackTransaction()

database.SQLTable()

database.storedProc()

database.storedProcArgs()

database.toString()

database.unwatch()

database.watch()

DbPool

DbPool.connect()

DbPool.connected()

DbPool.connection()

DbPool.DbPool()

DbPool.disconnect()

DbPool.majorErrorCode()

DbPool.majorErrorMessage()

DbPool.minorErrorCode()

DbPool.minorErrorMessage()

DbPool.prototype

DbPool.storedProcArgs()

DbPool.toString()

DBPool.unwatch()

DBPool.watch()

debug()

deleteResponseHeader()

File()

File.byteToString()

File.clearError()

File.close()

File.constructor

File.eof()

File.error()

File.exists()

File.flush()

File.getLength()

File.getPosition()

File.open()

File.prototype

File.read()

File.readByte()

File.readln()

File.setPosition()

File.stringToByte()

File.unwatch()

File.watch()

File.write()

File.writeByte()

File.writeln()

flush()

getOptionValue()

getOptionValueCount()

Lock()

Lock.constructor

Lock.isValid()

Lock.lock()

Lock.prototype

Lock.unlock()

Lock.unwatch()

Lock.watch()

ObjectContext

ObjectContext.OnTransactionAbort

ObjectContext.OnTransactionCommit

ObjectContext.SetAbort()

ObjectContext.SetComplete()

project

project.lock()

project.unlock()

project.unwatch()

project.watch()

redirect()

registerCFunction()

Request

Request.BinaryRead()

Request.ClientCertificate

Request.Cookies

Request.Form

Request.Form.Form.Count

Request.QueryString

Request.QueryString.Count

Request.ServerVariables

Request.TotalBytes

request

request.agent

request.formKey

request.imageX

request.imageY

request.ip

request.method

request.protocol

request.unwatch()

request.watch()

Response

Response.AddHeader()

Response.AppendToLog()

Response.BinaryWrite()

Response.Buffer

Response.CacheControl

Response.Charset

Response.Clear()

Response.ContentType

Response.Cookies

Response.End()

Response.Expires

Response.ExpiresAbsolute

Response.Flush()

Response.IsClientConnected

Response.PICS

Response.Redirect()

Response.Status

Response.Write()

Resultset

Resultset.close()

Resultset.columnName()

Resultset.columns()

Resultset.next()

Resultset.prototype

Resultset.unwatch()

Resultset.watch()

ScriptingContext

SendMail

SendMail.Bcc

SendMail.Body

SendMail.Cc

SendMail.constructor

SendMail.errorCode()

SendMail.errorMessage()

SendMail.Errorsto

SendMail.From

SendMail.Organization

SendMail.prototype

SendMail.Replyto

SendMail.send()

SendMail.Smtpserver

SendMail.Subject

SendMail.To

SendMail.unwatch()

SendMail.watch()

Server

Server.CreateObject()

Server.Execute()

Server.GetLastError()

Server.HTMLEncode()

Server.MapPath()

Server.ScriptTimeout

Server.Transfer()

Server.URLEncode()

server

server.host

server.hostname

server.lock()

server.port

server.protocol

server.unlock()

server.unwatch()

server.watch()

Session

Session.Abandon()

Session.CodePage

Session.Contents

Session.Contents.Remove()

Session.Contents.RemoveAll()

Session.LCID

Session.SessionID

Session.Session_OnEnd

Session.Session_OnStart

Session.StaticObjects

Session.Timeout

ssjs_generateClientID()

ssjs_getCGIVariable()

ssjs_getClientID()

Stproc

Stproc.close()

Stproc.outParamCount()

Stproc.outParameters()

Stproc.prototype

Stproc.resultSet()

Stproc.returnValue()

Stproc.unwatch()

Stproc.watch()

write()

INDEX

CD-ROM ONLY CHAPTERS

10   DOM CORE

Attr

Attr.Name

Attr.specified

Attr.value

Attr.ownerElement

CDATASection

CharacterData

CharacterData.data

CharacterData.length

CharacterData.substringData()

CharacterData.appendData()

CharacterData.insertData()

CharacterData.deleteData()

CharacterData.replaceData()

Comment

Document

Document.createAttribute()

Document.createAttributeNS()

Document.createCDATASection()

Document.createComment()

Document.createDocumentFragment()

Document.createElement()

Document.createElementNS()

Document.createEntityReference()

Document.createProcessingInstruction()

Document.createTextNode()

Document.doctype

Document.documentElement

Document.getElementById()

Document.getElementsByTagName()

Document.getElementsByTagNameNS()

Document.implementation

Document.importNode()

DocumentFragment

DocumentType

DocumentType.entities

DocumentType.internalSubset

DocumentType.name

DocumentType.notations

DocumentType.publicId

DocumentType.systemId

DOMException

DOMException.code

DOMImplementation

DOMImplementation.createDocument()

DOMImplementation.createDocumentType()

DOMImplementation.hasFeature()

Element

Element.getAttribute()

Element.getAttributeNode()

Element.getAttributeNodeNS()

Element.getAttributeNS()

Element.getElementsByTagName()

Element.getElementsByTagNameNS()

Element.hasAttribute()

Element.hasAttributeNS()

Element.removeAttribute()

Element.removeAttributeNode()

Element.removeAttributeNS()

Element.setAttribute()

Element.setAttributeNode()

Element.setAttributeNodeNS()

Element.setAttributeNS()

Element.tagName

Entity

Entity.notationName

Entity.publicId

Entity.systemId

EntityReference

NamedNodeMap

NamedNodeMap.getNamedItem()

NamedNodeMap.getNamedItemNS()

NamedNodeMap.item()

NamedNodeMap.length

NamedNodeMap.removeNamedItem()

NamedNodeMap.removeNamedItemNS()

NamedNodeMap.setNamedItem()

NamedNodeMap.setNamedItemNS()

Node

Node.attributes

Node.appendChild()

Node.childNodes

Node.cloneNode()

Node.firstChild

Node.hasAttributes()

Node.hasChildNodes()

Node.insertBefore()

Node.isSupported()

Node.lastChild

Node.localName

Node.namespaceURI

Node.nextSibling

Node.nodeName

Node.nodeType

Node.nodeValue

Node.normalize()

Node.ownerDocument

Node.parentNode

Node.prefix

Node.previousSibling

Node.removeChild()

Node.replaceChild()

Notation

Notation.publicId

Notation.systemId

ProcessingInstruction

ProcessingInstruction.data

ProcessingInstruction.target

Text

Text.splitText()

11   DOM HTML

HTMLAnchorElement

HTMLAnchorElement.accessKey

HTMLAnchorElement.blur()

HTMLAnchorElement.charset

HTMLAnchorElement.coords

HTMLAnchorElement.focus()

HTMLAnchorElement.href

HTMLAnchorElement.hrefLang

HTMLAnchorElement.name

HTMLAnchorElement.rel

HTMLAnchorElement.rev

HTMLAnchorElement.shape

HTMLAnchorElement.tabIndex

HTMLAnchorElement.target

HTMLAnchorElement.type

HTMLAppletElement

HTMLAppletElement.align

HTMLAppletElement.alt

HTMLAppletElement.archive

HTMLAppletElement.code

HTMLAppletElement.codeBase

HTMLAppletElement.height

HTMLAppletElement.hspace

HTMLAppletElement.name

HTMLAppletElement.object

HTMLAppletElement.vspace

HTMLAppletElement.width

HTMLAreaElement

HTMLAreaElement.accessKey

HTMLAreaElement.alt

HTMLAreaElement.coords

HTMLAreaElement.href

HTMLAreaElement.noHref

HTMLAreaElement.shape

HTMLAreaElement.tabIndex

HTMLAreaElement.target

HTMLBaseElement

HTMLBaseElement.href

HTMLBaseElement.target

HTMLBaseFontElement

HTMLBaseFontElement.color

HTMLBaseFontElement.face

HTMLBaseFontElement.size

HTMLBodyElement

HTMLBodyElement.aLink

HTMLBodyElement.background

HTMLBodyElement.bgColor

HTMLBodyElement.link

HTMLBodyElement.text

HTMLBodyElement.vLink

HTMLBRElement

HTMLBRElement.clear

HTMLButtonElement

HTMLButtonElement.accessKey

HTMLButtonElement.disabled

HTMLButtonElement.form

HTMLButtonElement.name

HTMLButtonElement.tabIndex

HTMLButtonElement.type

HTMLButtonElement.value

HTMLCollection

HTMLCollection.item()

HTMLCollection.length

HTMLCollection.namedItem()

HTMLDirectoryElement

HTMLDirectoryElement.compact

HTMLDivElement

HTMLDivElement.align

HTMLDListElement

HTMLDListElement.compact

HTMLDocument

HTMLDocument.anchors

HTMLDocument.applets

HTMLDocument.body

HTMLDocument.close()

HTMLDocument.cookie

HTMLDocument.domain

HTMLDocument.forms

HTMLDocument.getElementsByName()

HTMLDocument.images

HTMLDocument.links

HTMLDocument.open()

HTMLDocument.referrer

HTMLDocument.title

HTMLDocument.URL

HTMLDocument.write()

HTMLDocument.writeln()

HTMLDOMImplementation

HTMLDOMImplementation.createHTMLDocument()

HTMLElement

HTMLElement.className

HTMLElement.dir

HTMLElement.id

HTMLElement.lang

HTMLElement.title

HTMLFieldSetElement

HTMLFieldSetElement.form

HTMLFontElement

HTMLFontElement.color

HTMLFontElement.face

HTMLFontElement.size

HTMLFormElement

HTMLFormElement.acceptCharset

HTMLFormElement.action

HTMLFormElement.elements

HTMLFormElement.enctype

HTMLFormElement.length

HTMLFormElement.method

HTMLFormElement.name

HTMLFormElement.reset()

HTMLFormElement.submit()

HTMLFormElement.target

HTMLFrameElement

HTMLFrameElement.contentDocument

HTMLFrameElement.frameBorder

HTMLFrameElement.longDesc

HTMLFrameElement.marginHeight

HTMLFrameElement.marginWidth

HTMLFrameElement.name

HTMLFrameElement.noResize

HTMLFrameElement.scrolling

HTMLFrameElement.src

HTMLFrameSetElement

HTMLFrameSetElement.cols

HTMLFrameSetElement.rows

HTMLHeadElement

HTMLHeadElement.profile

HTMLHeadingElement

HTMLHeadingElement.align

HTMLHRElement

HTMLHRElement.align

HTMLHRElement.noShade

HTMLHRElement.size

HTMLHRElement.width

HTMLHtmlElement

HTMLHtmlElement.version

HTMLIFrameElement

HTMLIFrameElement.align

HTMLIFrameElement.contentDocument

HTMLIFrameElement.frameBorder

HTMLIFrameElement.height

HTMLIFrameElement.longDesc

HTMLIFrameElement.marginHeight

HTMLIFrameElement.marginWidth

HTMLIFrameElement.name

HTMLIFrameElement.scrolling

HTMLIFrameElement.src

HTMLIFrameElement.width

HTMLImageElement

HTMLImageElement.align

HTMLImageElement.alt

HTMLImageElement.border

HTMLImageElement.height

HTMLImageElement.hspace

HTMLImageElement.isMap

HTMLImageElement.longDesc

HTMLImageElement.lowSrc

HTMLImageElement.src

HTMLImageElement.useMap

HTMLImageElement.vspace

HTMLImageElement.width

HTMLInputElement

HTMLInputElement.accept

HTMLInputElement.accessKey

HTMLInputElement.align

HTMLInputElement.alt

HTMLInputElement.blur()

HTMLInputElement.checked

HTMLInputElement.click()

HTMLInputElement.defaultChecked

HTMLInputElement.defaultValue

HTMLInputElement.disabled

HTMLInputElement.focus()

HTMLInputElement.form

HTMLInputElement.maxLength

HTMLInputElement.name

HTMLInputElement.readOnly

HTMLInputElement.select()

HTMLInputElement.size

HTMLInputElement.src

HTMLInputElement.tabIndex

HTMLInputElement.type

HTMLInputElement.useMap

HTMLInputElement.value

HTMLIsIndexElement

HTMLIsIndexElement.form

HTMLIsIndexElement.prompt

HTMLLabelElement

HTMLLabelElement.accessKey

HTMLLabelElement.form

HTMLLabelElement.htmlFor

HTMLLegendElement

HTMLLegendElement.accessKey

HTMLLegendElement.align

HTMLLegendElement.form

HTMLLIElement

HTMLLIElement.type

HTMLLIElement.value

HTMLLinkElement

HTMLLinkElement.charset

HTMLLinkElement.disabled

HTMLLinkElement.href

HTMLLinkElement.hreflang

HTMLLinkElement.media

HTMLLinkElement.rel

HTMLLinkElement.rev

HTMLLinkElement.target

HTMLLinkElement.type

HTMLMapElement

HTMLMapElement.areas

HTMLMapElement.name

HTMLMenuElement

HTMLMenuElement.compact

HTMLMetaElement

HTMLMetaElement.content

HTMLMetaElement.httpEquiv

HTMLMetaElement.name

HTMLMetaElement.scheme

HTMLModElement

HTMLModElement.cite

HTMLModElement.dateTime

HTMLObjectElement

HTMLObjectElement.align

HTMLObjectElement.archive

HTMLObjectElement.border

HTMLObjectElement.code

HTMLObjectElement.codeBase

HTMLObjectElement.codeType

HTMLObjectElement.contentDocument

HTMLObjectElement.data

HTMLObjectElement.declare

HTMLObjectElement.form

HTMLObjectElement.height

HTMLObjectElement.hspace

HTMLObjectElement.name

HTMLObjectElement.standby

HTMLObjectElement.tabIndex

HTMLObjectElement.type

HTMLObjectElement.useMap

HTMLObjectElement.vspace

HTMLObjectElement.width

HTMLOListElement

HTMLOListElement.compact

HTMLOListElement.start

HTMLOListElement.type

HTMLOptGroupElement

HTMLOptGroupElement.disabled

HTMLOptGroupElement.label

HTMLOptionElement

HTMLOptionElement.defaultSelected

HTMLOptionElement.disabled

HTMLOptionElement.form

HTMLOptionElement.index

HTMLOptionElement.label

HTMLOptionElement.selected

HTMLOptionElement.text

HTMLOptionElement.value

HTMLParagraphElement

HTMLParagraphElement.align

HTMLParamElement

HTMLParamElement.name

HTMLParamElement.type

HTMLParamElement.value

HTMLParamElement.valueType

HTMLPreElement

HTMLPreElement.width

HTMLQuoteElement

HTMLQuoteElement.cite

HTMLScriptElement

HTMLScriptElement.charset

HTMLScriptElement.defer

HTMLScriptElement.event

HTMLScriptElement.htmlFor

HTMLScriptElement.src

HTMLScriptElement.text

HTMLScriptElement.type

HTMLSelectElement

HTMLSelectElement.add()

HTMLSelectElement.blur()

HTMLSelectElement.disabled

HTMLSelectElement.focus()

HTMLSelectElement.form

HTMLSelectElement.length

HTMLSelectElement.multiple

HTMLSelectElement.name

HTMLSelectElement.options

HTMLSelectElement.remove()

HTMLSelectElement.selectedIndex

HTMLSelectElement.size

HTMLSelectElement.tabIndex

HTMLSelectElement.type

HTMLSelectElement.value

HTMLStyleElement

HTMLStyleElement.disabled

HTMLStyleElement.media

HTMLStyleElement.type

HTMLTableCaptionElement

HTMLTableCaptionElement.align

HTMLTableCellElement

HTMLTableCellElement.abbr

HTMLTableCellElement.align

HTMLTableCellElement.axis

HTMLTableCellElement.bgColor

HTMLTableCellElement.cellIndex

HTMLTableCellElement.ch

HTMLTableCellElement.chOff

HTMLTableCellElement.colSpan

HTMLTableCellElement.headers

HTMLTableCellElement.height

HTMLTableCellElement.noWrap

HTMLTableCellElement.rowSpan

HTMLTableCellElement.scope

HTMLTableCellElement.vAlign

HTMLTableCellElement.width

HTMLTableColElement

HTMLTableColElement.align

HTMLTableColElement.ch

HTMLTableColElement.chOff

HTMLTableColElement.span

HTMLTableColElement.vAlign

HTMLTableColElement.width

HTMLTableElement

HTMLTableElement.align

HTMLTableElement.bgColor

HTMLTableElement.border

HTMLTableElement.caption

HTMLTableElement.cellPadding

HTMLTableElement.cellSpacing

HTMLTableElement.createCaption()

HTMLTableElement.createTFoot()

HTMLTableElement.createTHead()

HTMLTableElement.deleteCaption()

HTMLTableElement.deleteRow()

HTMLTableElement.deleteTFoot()

HTMLTableElement.deleteTHead()

HTMLTableElement.frame

HTMLTableElement.insertRow()

HTMLTableElement.rows

HTMLTableElement.rules

HTMLTableElement.summary

HTMLTableElement.tBodies

HTMLTableElement.tFoot

HTMLTableElement.tHead

HTMLTableElement.width

HTMLTableRowElement

HTMLTableRowElement.align

HTMLTableRowElement.bgColor

HTMLTableRowElement.cells

HTMLTableRowElement.ch

HTMLTableRowElement.chOff

HTMLTableRowElement.deleteCell()

HTMLTableRowElement.insertCell()

HTMLTableRowElement.rowIndex

HTMLTableRowElement.sectionRowIndex

HTMLTableRowElement.vAlign

HTMLTableSectionElement

HTMLTableSectionElement.align

HTMLTableSectionElement.ch

HTMLTableSectionElement.chOff

HTMLTableSectionElement.deleteRow()

HTMLTableSectionElement.insertRow()

HTMLTableSectionElement.rows

HTMLTableSectionElement.vAlign

HTMLTextAreaElement

HTMLTextAreaElement.accessKey

HTMLTextAreaElement.blur()

HTMLTextAreaElement.cols

HTMLTextAreaElement.defaultValue

HTMLTextAreaElement.disabled

HTMLTextAreaElement.focus()

HTMLTextAreaElement.form

HTMLTextAreaElement.name

HTMLTextAreaElement.readOnly

HTMLTextAreaElement.rows

HTMLTextAreaElement.select()

HTMLTextAreaElement.tabIndex

HTMLTextAreaElement.type

HTMLTextAreaElement.value

HTMLTitleElement

HTMLTitleElement.text

HTMLUListElement

HTMLUListElement.compact

HTMLUListElement.type

12   DOM EVENTS

DocumentEvent

DocumentEvent.createEvent()

Event

Event.type

Event.bubbles

Event.cancelable

Event.currentTarget

Event.eventPhase

Event.initEvent()

Event.preventDefault()

Event.stopPropagation()

Event.target

Event.timeStamp

EventException

EventException.code

EventListener

EventTarget

EventTarget.addEventListener()

EventTarget.dispatchEvent()

EventTarget.removeEventListener()

MouseEvent

MouseEvent.altKey

MouseEvent.button

MouseEvent.clientX

MouseEvent.clientY

MouseEvent.ctrlKey

MouseEvent.initMouseEvent()

MouseEvent.metaKey

MouseEvent.relatedTarget

MouseEvent.screenX

MouseEvent.screenY

MouseEvent.shiftKey

MutationEvent

MutationEvent.relatedNode

MutationEvent.attrChange

MutationEvent.attrName

MutationEvent.initMutationEvent()

MutationEvent.newValue

MutationEvent.prevValue

UIEvent

UIEvent.detail

UIEvent.initUIEvent()

UIEvent.view

13   DOM CSS

Counter

Counter.identifier

Counter.listStyle

Counter.separator

CSSCharsetRule

CSSCharsetRule.encoding

CSSFontFaceRule

CSSFontFaceRule.style

CSSImportRule

CSSImportRule.href

CSSImportRule.media

CSSImportRule.styleSheet

CSSMediaRule

CSSMediaRule.cssRules

CSSMediaRule.deleteRule()

CSSMediaRule.insertRule()

CSSMediaRule.media

CSSPageRule

CSSPageRule.selectorText

CSSPageRule.style

CSSPrimitiveValue

CSSPrimitiveValue.getCounterValue()

CSSPrimitiveValue.getFloatValue()

CSSPrimitiveValue.getRectValue()

CSSPrimitiveValue.getRGBColorValue()

CSSPrimitiveValue.getStringValue()

CSSPrimitiveValue.primitiveType

CSSPrimitiveValue.setFloatValue()

CSSPrimitiveValue.setStringValue()

CSSRule

CSSRule.cssText

CSSRule.parentRule

CSSRule.parentStyleSheet

CSSRule.type

CSSRuleList

CSSRuleList.item()

CSSRuleList.length

CSSStyleDeclaration

CSSStyleDeclaration.cssText

CSSStyleDeclaration.getPropertyCSSValue()

CSSStyleDeclaration.getPropertyPriority()

CSSStyleDeclaration.getPropertyValue()

CSSStyleDeclaration.item()

CSSStyleDeclaration.length

CSSStyleDeclaration.parentRule

CSSStyleDeclaration.removeProperty()

CSSStyleDeclaration.setProperty()

CSSStyleRule

CSSStyleRule.selectorText

CSSStyleRule.style

CSSStyleSheet

CSSStyleSheet.cssRules

CSSStyleSheet.deleteRule()

CSSStyleSheet.insertRule()

CSSStyleSheet.ownerRule

CSSUnknownRule

CSSValue

CSSValue.cssText

CSSValue.cssValueType

CSSValueList

CSSValueList.item()

CSSValueList.length

DocumentCSS

DocumentCSS.getOverrideStyle()

DOMImplementationCSS

DOMImplementationCSS.createCSSStyleSheet()

ElementCSSInlineStyle

ElementCSSInlineStyle.style

Rect

Rect.bottom

Rect.left

Rect.right

Rect.top

RGBColor

RGBColor.blue

RGBColor.green

RGBColor.red

ViewCSS

ViewCSS.getComputedStyle()

14   JSCRIPT RUNTIME

Dictionary

Dictionary.Add()

Dictionary.Count

Dictionary.Exists()

Dictionary.Item()

Dictionary.Items()

Dictionary.Key()

Dictionary.Keys()

Dictionary.Remove()

Dictionary.RemoveAll()

Drive

Drive.AvailableSpace

Drive.DriveLetter

Drive.DriveType

Drive.FileSystem

Drive.FreeSpace

Drive.IsReady

Drive.Path

Drive.RootFolder

Drive.SerialNumber

Drive.ShareName

Drive.TotalSize

Drive.VolumeName

Drives

Drives.Count

Drives.Item()

File

File.Attributes

File.Copy()

File.DateCreated

File.DateLastAccessed

File.DateLastModified

File.Delete

File.Drive

File.Move()

File.Name

File.OpenAsTextStream()

File.ParentFolder

File.Path

File.ShortName

File.ShortPath

File.Size

File.Type

Files

Files.Count

Files.Item

FileSystemObject

FileSystemObject.BuildPath()

FileSystemObject.CopyFile

FileSystemObject.CopyFolder()

FileSystemObject.CreateFolder()

FileSystemObject.CreateTextFile()

FileSystemObject.DeleteFile()

FileSystemObject.DeleteFolder()

FileSystemObject.DriveExists()

FileSystemObject.Drives

FileSystemObject.FileExists()

FileSystemObject.FolderExists()

FileSystemObject.GetAbsolutePathName()

FileSystemObject.GetBaseName()

FileSystemObject.GetDrive()

FileSystemObject.GetDriveName()

FileSystemObject.GetExtensionName()

FileSystemObject.GetFile()

FileSystemObject.GetFileName()

FileSystemObject.GetFolder()

FileSystemObject.GetParentFolderName()

FileSystemObject.GetSpecialFolder()

FileSystemObject.GetTempName()

FileSystemObject.MoveFile()

FileSystemObject.MoveFolder()

FileSystemObject.OpenTextFile()

Folder

Folder.Attributes

Folder.Copy()

Folder.DateCreated

Folder.DateLastAccessed

Folder.DateLastModified

Folder.Delete()

Folder.Drive

Folder.Files

Folder.IsRootFolder

Folder.Move()

Folder.Name

Folder.ParentFolder

Folder.Path

Folder.ShortName

Folder.ShortPath

Folder.Size

Folder.SubFolders

Folder.Type

Folders

Folders.Add()

Folders.Count

Folders.Item

TextStream

TextStream.AtEndOfLine

TextStream.AtEndOfStream

TextStream.Close()

TextStream.Column

TextStream.Line

TextStream.Read()

TextStream.ReadAll()

TextStream.ReadLine()

TextStream.Skip()

TextStream.SkipLine()

TextStream.Write()

TextStream.WriteBlankLines()

TextStream.WriteLine()

15   WINDOWS SCRIPT HOST

Scripting.Signer

WScript

WScript.Arguments

WScript.ConnectObject()

WScript.CreateObject()

WScript.DisconnectObject()

WScript.Echo()

WScript.FullName

WScript.GetObject()

WScript.Interactive

WScript.Name

WScript.Path

WScript.Quit()

WScript.ScriptFullName

WScript.ScriptName

WScript.Sleep()

WScript.StdErr

WScript.StdIn

WScript.StdOut

WScript.Version

WScript.WshArguments

WScript.WshController

WScript.WshNetwork

WScript.WshShell

WshArguments

WshArguments.Count

WshArguments.Count()

WshArguments.Item()

WshArguments.length

WshArguments.Named

WshArguments.ShowUsage()

WshArguments.Unnamed

WshArguments.WshNamed

WshArguments.WshUnnamed

WshController

WshController.CreateScript()

WshController.WshRemote

WshEnvironment

WshEnvironment.Count()

WshEnvironment.Item()

WshEnvironment.length

WshEnvironment.Remove()

WshNamed

WshNamed.Count()

WshNamed.Exists()

WshNamed.Item

WshNamed.length

WshNetwork

WshNetwork.AddPrinterConnection()

WshNetwork.AddWindowsPrinterConnection()

WshNetwork.ComputerName

WshNetwork.EnumNetworkDrives()

WshNetwork.EnumPrinterConnection()

WshNetwork.MapNetworkDrive()

WshNetwork.RemoveNetworkDrive()

WshNetwork.RemovePrinterConnection()

WshNetwork.SetDefaultPrinter()

WshNetwork.UserDomain

WshNetwork.UserName

WshRemote

WshRemote.End

WshRemote.Error (Event)

WshRemote.Error (Property)

WshRemote.Execute()

WshRemote.WshRemoteError

WshRemote.Start

WshRemote.Status

WshRemote.Terminate()

WshRemoteError

WshRemoteError.Character

WshRemoteError.Description

WshRemoteError.Line

WshRemoteError.Number

WshRemoteError.Source

WshRemoteError.SourceText

WshScriptExec

WshScriptExec.Status

WshScriptExec.StdErr

WshScriptExec.StdIn

WshScriptExec.StdOut

WshScriptExec.Terminate()

WshShell

WshShell.AppActivate()

WshShell.CreateShortcut()

WshShell.CurrentDirectory

WshShell.Environment

WshShell.Exec()

WshShell.ExpandEnvironmentStrings()

WshShell.LogEvent()

WshShell.Popup()

WshShell.RegDelete()

WshShell.RegRead()

WshShell.RegWrite()

WshShell.Run()

WshShell.SendKeys()

WshShell.SpecialFolders

WshShell.WshShortcut

WshShell.WshUrlShortcut

WshShell.WshEnvironment

WshShell.WshSpecialFolders

WshShell.WshScriptExec

WshShortcut

WshShortcut.Arguments

WshShortcut.Description

WshShortcut.FullName

WshShortcut.Hotkey

WshShortcut.IconLocation

WshShortcut.Save()

WshShortcut.TargetPath

WshShortcut.WindowStyle

WshShortcut.WorkingDirectory

WshSpecialFolders

WshSpecialFolders.Count

WshSpecialFolders.Item

WshSpecialFolders.length

WshUnnamed

WshUnnamed.Count()

WshUnnamed.Item

WshUnnamed.length

WshUrlShortcut

WshUrlShortcut.FullName

WshUrlShortcut.Save()

WshUrlShortcut.TargetPath

About the Authors

R. Allen Wyke, of Durham, North Carolina is vice president of Research and Development at the eMarketing solutions company Engage, where he works with product managers, product marketing, and engineering to help ensure that their products have the proper vision and direction in both online and offline worlds. He has also developed intranet Web pages for a leading telecommunications and networking company, as well as worked on several Internet sites.

Wyke is the author of seven books on various Internet technologies including Perl, JavaScript, and PHP. In the past, he has also written the monthly Webmaster column for SunWorld, and a weekly article, “Integrating Windows and Unix,” for ITworld.com.

Jason D. Gilliam is a software developer at ichat, Inc. At ichat, he develops Web-based chat and discussion group software using C++, JavaScript, HTML, and various other Internet technologies. In addition to his work at ichat, he has developed intranet Web pages and numerous C++ applications for a leading telecommunications company and has worked on several Internet sites for other organizations. Gilliam is also a contributing author to JavaScript Unleashed, Third Edition. He holds a bachelor’s degree in Computer Engineering from North Carolina State University. Jason and his wife live in Cary, North Carolina.

Charlton Ting, of Vienna, Virginia is a software engineer for KOZ Inc who began programming in JavaScript with its first beta release. He has worked extensively with many Internet technologies while developing Internet telephony solutions at Lucent Technologies. His programming experience includes a variety of languages such as Java, C++, Smalltalk, Perl, HTML, XML, and Pascal. Ting holds degrees in Computer Engineering and Electrical Engineering from North Carolina State University.

Sean Michaels is a software engineer at Avesair, Inc. where he designs and implements next generation mobile commerce applications. He has been in the Internet space since 1994 and has a depth of experience in developing highly distributed fault tolerant applications. He has used Java, C++, and XML extensively over the years. Previously, he coauthored the Official Netscape ONE book and the Official Netscape Technologies Developer Guide from Netscape Press. Michaels holds a degree in Latin from Millsaps College in Jackson, MS and a degree in Computer Science from Mississippi College.

Dedications

This one is for my sisters: Sandra, Valerie, and Evelyn. They truly are inspirations in my life and have broadened my visions and provided support well beyond anything I would have ever imagined. I love each of you very much.

R. Allen Wyke

I dedicate this book to my wonderful wife, Deena, who is the greatest! Your constant encouragement, love, and support has carried me through the writing of this book. I love you!

Jason D. Gilliam

This book is dedicated to my family: John, Alice, Angela, Melissa, Olivia, and Tilly. Thank you for all your love and support for everything I’ve done in my life. I love you all very much.

Charlton Ting

I would like to dedicate this book to my wife April and my two children Noah, and Anna, and to the memory of my father Alan Michaels without whose influence I would not be here today.

Sean Michaels

Acknowledgments

R. Allen Wyke

On the publishing side, I would like to thank Bob Kern of TIPS Publishing and my coauthors, Jason and Chuck, for their professionalism, hard work, and overall support in the proposing and writing of this book. I would also like to thank Shelley Johnston-Markanday, who has been nothing short of an absolutely fabulous acquisitions editor, and Jon Steever, who developed the book and kept us focused. Additionally, I would like to thank everyone at Sams who worked on the book and helped make sure that was the best it could be.

I would also like to thank Dan Jaye for the professional opportunities he has allowed me to pursue at Engage, as well as the pressure to push the envelope a little more. And finally, I would like to thank the wonderful woman in my life, J, and the rest of the “Raccoons.” It’s never a dull moment around any of you.

Jason D. Gilliam

I would like to thank Bob Kern of TIPS Publishing and my coauthors, Allen and Chuck, for their efforts in developing and writing this book. I would also like to thank our acquisitions editor, Shelley Johnston-Markanday, and development editor, Jon Steever, for all their hard work as well as everyone at Sams who helped make this book a success.

I would also like to thank the “lunch guys” for their open ears and words of encouragement.

Charlton Ting

I would like to thank Bob Kern of TIPS Publishing for all his hard work in making this book possible. I also want to thank my coauthors, Allen and Jason, for all their hard work, dedication, and encouragement to bring this book together and make it such a great success. It’s truly an honor to work with you guys. Additionally I would like to thank Shelley Johnston-Markanday, Scott Meyers, Jon Steever, and everyone at Sams who worked so hard at making this book so successful.

I also want to thank all my friends who have been there when I needed them: Mike, Carolyn, Monty, Theresa, Mitch, Sabrina, John O, Sunil “the Z Doc” Cherukuri, Blanke, Cosima, Nairn, Airmer Roberts, and anyone I may have forgotten to mention. You guys are the greatest friends anyone could have.

Sean Michaels

I would like to thank Bob Kern at TIPS Publishing for putting up with my antics during the authoring process. Also, the coauthors: Allen, Chuck, and Jason for giving me a solid foundation to work with and making the first edition of this book successful. I would also like to thank the folks at Sams Publishing: Shelley Johnston-Markanday, Scott Meyers, and Jon Steever for guiding the book through the process.

Tell Us What You Think!

As the reader of this book, you are our most important critic and commentator. We value your opinion and want to know what we’re doing right, what we could do better, what areas you’d like to see us publish in, and any other words of wisdom you’re willing to pass our way.

You can e-mail or write me directly to let me know what you did or didn’t like about this book—as well as what we can do to make our books stronger.

Please note that I cannot help you with technical problems related to the topic of this book, and that due to the high volume of mail I receive, I might not be able to reply to every message.

When you write, please be sure to include this book’s title and author as well as your name and phone or fax number. I will carefully review your comments and share them with the author and editors who worked on the book.

Fax:

317-581-4770

Email:

[email protected]

Mail:

Mark Taber
Associate Publisher
Sams Publishing
201 West 103rd Street
Indianapolis, IN 46290 USA

Introduction

Welcome to Pure JavaScript, 2nd Edition! This book has been written by JavaScript programmers for JavaScript programmers, and has been updated to cover the most current version of the language. It is your complete reference for developing, testing, and deploying JavaScript solutions in pages and on Web sites.

Pure JavaScript was not written to teach a person how to program, but rather to provide the details and semantics of the JavaScript language so programmers can exploit it as they see fit. JavaScript has evolved over the past few years and is reaching into new areas, especially in the most current browsers and server-side environments, most of which are addressed in this book. The book itself is broken into three main parts, including references on concepts, techniques, and syntax. Each represents a valuable step in learning and using the language.

Part I, “A Programmer’s Overview of JavaScript,” acts as a bridge for programmers who are currently programming in another language. It covers some programming techniques, such as the use of regular expressions, event handlers, exceptions, and even debugging. Many times programmers don’t want to buy a beginners book on JavaScript because they do not need to know how to program, but rather they need specifics about the language. When they know these specifics and semantics, the syntax is easy. This section provides the necessary information for such a programming migration.

Part II, “Programming in JavaScript,” shows you the advantages and strengths of JavaScript. It discusses some of the pros and cons of using the language on the client-side, server-side, and even within the Windows Script Host environment. Programmers will learn how to use JavaScript in real-world instances. They will be introduced to some of the browser issues as well as how to process Web information. In addition, programmers will be shown how to access Java functions within an applet and to use server-side JavaScript for Internet, intranet, or extranet development. After you have completed this section, you will be ready to move forward and start programming. This leads you into the last section of the book.

Part III, “JavaScript Reference,” makes up the majority of the book and contains some of the most useful information for current JavaScript programmers—reference material organized by object. Each property, method, and event is discussed in detail under its associated object; and you’ll see an example of its use. Each entry also shows the appropriate language version and environment (browser, server, and so on) support.

The section itself is broken into nine chapters. The first chapter covers the core JavaScript objects and syntax. The next chapter covers objects specific to the client-side, which is where JavaScript really has its roots. The third, fourth, fifth, and sixth chapter in this section outlines the various support for the Document Object Model (DOM) within JavaScript. The seventh chapter covers server-side JavaScript objects for the Netscape and iPlanet Enterprise servers, and the Active Server pages (ASP) environment present in Microsoft’s IIS Web Servers. The second to last chapter in the section covers the JScript RunTime objects, and the final chapter covers Windows Script Host.

And that covers it! For new JavaScript programmers, welcome to the world of JavaScript. For those of you wanting a good, solid reference for your programming needs, we hope you find this book to be the most resourceful and current title on the shelves today!

R. Allen Wyke

Jason Gilliam

Charlton Ting

Sean Michaels

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.119.131.72