did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780130863348

Dhtml and Javascript: Cascading Sytle Sheets, Javascript Style Sheets, & Javascripted Layers Plus Advanced Javascript 1.2 & 1.3

by
  • ISBN13:

    9780130863348

  • ISBN10:

    0130863343

  • Format: Paperback
  • Copyright: 1999-09-01
  • Publisher: Prentice Hall Ptr

Note: Supplemental materials are not guaranteed with Rental or Used book purchases.

Purchase Benefits

List Price: $42.99 Save up to $10.75
  • Buy Used
    $32.24

    USUALLY SHIPS IN 2-4 BUSINESS DAYS

Supplemental Materials

What is included with this book?

Summary

Master the awesome Web power of DHTML, style sheets and Netscape JavaScript 1.2/1.3! Dynamic HTML and JavaScript brings together a complete task-oriented tutorial, a detailed JavaScript syntax reference, and a library of 400+ working examples that show exactly how to build innovative Web sites with Netscape's hottest technologies. Hands-on and comprehensive, Dynamic HTML and JavaScript lets you break through Web clutter -- and create the great-looking, top-performing sites you've always wanted to build. Gilorien introduces cascading style sheets and layers, and shows how to control them with JavaScript. You'll master the JavaScript object model; statements, operators, functions, methods, expressions, variables, properties, and more. The book contains detailed coverage of the new JavaScript Layer Object; pattern matching with RegExp Object; and how to make the most of JavaScript 1.3's new JavaScript console. With more than 400 working scripts, you can't find a more useful, practical guide to JavaScript 1.2/1.3 and DHTML!

Author Biography

Gilorien is a freelance artist in both the 2D and 3D realm, a 3D animator, musician, and advanced Web site designer and consultant. His company, DreamPlay Studios, provides content and consulting for a wide variety of projects, and is currently working on a full-length 3D digital animated film.

Table of Contents

Preface xvi
Regarding HTML Syntax xviii
Regarding JavaScript Syntax xviii
Regarding Section Header Capitalization xix
About the CD-ROM xx
Part I Dynamic HTML
Style Sheets
1(126)
Introduction to Style Sheets
4(4)
Style Sheets Overview
4(2)
The Golden Rules for Styles
6(2)
Cascading Style Sheets & JavaScript Style Sheets
8(1)
Cascading Style Sheets
8(8)
CSS Syntax Property Chart
11(1)
CSS & JavaScript Syntax Property Comparison Chart
12(1)
CSS Layer Properties and <LAYER> Attributes Chart
13(1)
JavaScript Layer Object Properties Chart
14(1)
Generic { font-family: } Names Chart
14(1)
Styles Chart for HTML Elements
15(1)
The <STYLE> Element
16(7)
Handling Comments in Styles
18(2)
<STYLE> Element Style
20(3)
Cascading Style Sheet Properties
23(49)
The { font-size: } Property
23(1)
The { font-family: } Property
24(1)
The { font-weight: } Property
25(1)
The { font-style: } Property
25(2)
The { line-height: } Property
27(1)
The { text-decoration: } Property
28(1)
The { text-transform: } Property
28(1)
The { text-align: } Property
28(1)
The { text-indent: } Property
29(1)
Margins Overview
30(1)
The { margin: } Property
31(1)
The { margin-top: } Property
32(1)
The { margin-right: } Property
32(1)
The { margin-bottom: } Property
32(1)
The { margin-left: } Property
32(2)
Padding Overview
34(1)
The { padding: } Property
34(1)
The { padding-top: } Property
35(1)
The { padding-right: } Property
35(1)
The { padding-bottom: } Property
35(1)
The { padding-left: } Property
35(2)
Color Overview
37(1)
The { color: } Property
38(2)
The { background-color: } Property
40(2)
The { background-image: } Property
42(4)
Setting Borders Overview
46(1)
The { border-style: } Property
46(2)
The { border-color: } Property
48(4)
Border Widths
52(1)
The { border-width: } Property
52(1)
The { border-top-width: } Property
53(1)
The { border-right-width: } Property
53(1)
The { border-bottom-width: } Property
53(1)
The { border-left-width: } Property
53(6)
The { width: } Property
59(3)
Horizontal Alignment, Floating, and Clear
62(1)
The { float: } Property
62(2)
The { clear: } Property
64(2)
The { white-space: } Property
66(2)
The { list-style-type: } Property
68(4)
Using Styles in the <STYLE> Element
72(32)
<STYLE> Element with CLASS of STYLE
72(2)
Naming your CLASS of STYLE
74(1)
Defining a CLASS of STYLE without attaching it to an Element
75(1)
The Keyword all
75(3)
Attaching the same CLASS to more than one Element
78(3)
Bordered Link workaround example
81(2)
<STYLE> Element with ID Definition for CLASS Exceptions
83(2)
Styles and Tables
85(8)
<STYLE> Element with CONTEXTUAL SELECTION CRITERIA
93(5)
Inheritance issues for CONTEXTUAL STYLEs
98(1)
CONTEXTUAL SELECTION with CLASSes of STYLE and NAMED INDIVIDUAL STYLEs
99(5)
More Style Uses
104(23)
The STYLE Attribute
104(1)
The <SPAN> Element
105(1)
The <SPAN> Element with STYLE Attribute
106(4)
The <SPAN> Element with CLASS Attribute
110(2)
The <SPAN> Element with ID Attribute for CLASS Exceptions
112(2)
External Style Sheets with the <LINK> Element
114(1)
The <LINK> Element
114(7)
Multiple External Style Sheets in one document
121(1)
External Style Sheet precedence issues
121(2)
Multiple <STYLE> Elements in one document
123(4)
Layers & Styles
127(52)
Creating Layers with Styles
129(1)
Overview
129(1)
Creating Layers with CSS Syntax
130(32)
Creating a LAYER with the STYLE Attribute
130(1)
Creating a LAYER with a CLASS of STYLE
131(1)
The { position: } Property
132(1)
The { left: } Property
132(1)
The { top: } Property
133(2)
The NAMED LAYER Style (Creating a LAYER with the ID Attribute)
135(1)
The { width: } Property
136(1)
The { height: } Property
137(2)
The { clip: } Property
139(1)
The bugged version of the { clip: } Property
139(3)
The unbugged version of the { clip: } Property
142(4)
The { z-index: } Property
146(3)
The { visibility: } Property
149(2)
The { layer-background-color: } Property
151(1)
The { layer-background-image: } Property
152(6)
The { include-source: } Property
158(3)
CSS Layer Properties and <LAYER> Attributes Chart
161(1)
Creating Layers with the <LAYER> Element
162(17)
The <LAYER> Element
162(11)
The <ILAYER> Element
173(3)
The <NOLAYER> Element
176(3)
Layers & JavaScript
179(184)
Introducing JavaScript Layers
182(1)
Overview
182(1)
Style Sheet Comments for JavaScript Syntax
182(1)
New JavaScript Properties
183(6)
New document Object Properties
183(1)
The tags Property
183(2)
The classes Property
185(2)
The ids Property
187(2)
JavaScript Style Sheets
189(7)
JavaScript Style Sheets
189(1)
Using the with() Statement
189(1)
The JavaScript Keyword all
190(1)
The contextual() Method
191(3)
JavaScript Style Sheet Properties & Examples Chart
194(1)
JavaScript Style Sheet Properties & All Values Chart
195(1)
JavaScript and Layers
196(7)
The JSS position Property
196(1)
The HTML <SCRIPT> Element
196(1)
Comment Tag to hide the contents of the <SCRIPT> Element
197(1)
The JavaScript Keyword var
198(1)
The JavaScript Layer Object
199(1)
The JavaScript layers[i] Array
199(1)
The two types of document Objects
200(3)
Properties of the Layer Object
203(13)
Properties of the Layer Object --- Chart
203(1)
The document Property of the Layer Object
204(1)
Invoking Methods on a Layer Object
204(1)
The Layer Object name Property
205(1)
The Layer Object left Property
205(1)
The Layer Object top Property
206(1)
The Layer Object pageX Property
207(1)
The Layer Object pageY Property
207(1)
The Layer Object visibility Property
208(1)
The Layer Object zIndex Property
209(1)
The Layer Object sibling Above Property
209(1)
The Layer Object siblingBelow Property
210(1)
The Layer Object above Property
210(1)
The Layer Object below Property
210(1)
The Layer Object parentLayer Property
211(1)
The Layer Object and Clipping Rectangles
211(1)
Default Values for the Clipping Properties
212(1)
The Layer Object clip.top Property
212(1)
The Layer Object clip.left Property
212(1)
The Layer Object clip.bottom Property
213(1)
The Layer Object clip.right Property
213(1)
The Layer Object clip.width Property
213(1)
The Layer Object clip.height Property
214(1)
The Layer Object bgColor Property
214(1)
The Layer Object background Property
215(1)
The Layer Object src Property
215(1)
Methods of the Layer Object
216(14)
The moveBy(dx, dy) Method
217(1)
The moveTo(x, y) Method
217(1)
The moveToAbsolute(x, y) Method
218(1)
The resizeBy(dwidth, dheight) Method
218(1)
The resizeTo(width, height) Method
219(1)
The moveAbove(layerName) Method
220(1)
The moveBelow(layerName) Method
221(1)
The load(``sourceURL'', newPixelWidth) Method
221(9)
Using JavaScript with Layers
230(133)
The JavaScript write() Method
230(1)
Using the write() & close() Methods
230(2)
Using the moveAbove() Method
232(4)
Show & Hide Layers & writing Layer content
236(4)
The new Operator for creating new Layers in real-time
240(1)
Dynamically create new Layers with tags Property Style
241(5)
Localized JavaScript <SCRIPT>s within a Layer
246(4)
Animating a Clipping Rectangle to reveal an Image
250(1)
The JavaScript setTimeout() Method
250(1)
The JavaScript clearTimeout() Method
250(1)
Animating Clipping Rectangles and popping Images
251(13)
Some JavaScript Tips
264(1)
Animating control Layers and Images offscreen and onscreen
264(20)
The JavaScript setInterval() Method
284(1)
The JavaScript clearInterval() Method
284(1)
Three examples to cycle through Background Colors repeatedly
285(11)
A Tic Tac Toe game example
296(11)
The JavaScript Date Object
307(1)
Creating Date Objects with the four Date Constructors
308(1)
Creating a Time Counter and Displaying the Current Time
308(2)
Creating a Time Counter and Displaying the Current Time in a Frameset
310(6)
The JavaScript Conditional Operator?:
316(5)
The JavaScript Math Object
321(1)
Math Object Property Summaries
322(1)
Math Object Method Summaries
322(1)
Randomly load different Background Images into a Layer
323(2)
Using Math Methods in a quasi-calculator
325(9)
Math Methods of Math.max(x,y), Math.min(x,y) and Math.pow(x,y)
334(2)
The JavaScript toString() Method
336(1)
The JavaScript parseFloat() Function
337(1)
The JavaScript parseInt() Function
337(1)
The JavaScript isNaN() Function
338(1)
The JavaScript charAt() Method
338(1)
The JavaScript split() Method
338(1)
The JavaScript slice() Method
339(1)
The length Property of String Object
339(1)
A really cool color conversion calculator
340(11)
A compilation example with border animation and music
351(12)
Part II JavaScript 1.2
Objects & Functions
363(108)
JavaScript Objects
366(5)
The JavaScript Object Hierarchy
366(1)
Using JavaScript Objects
367(1)
Object Properties and Methods
367(4)
JavaScript Functions
371(15)
Defining a Function with the Function Statement
371(1)
Calling a Function by Attribute Assignment
372(1)
Calling a Function by Name
373(2)
Calling a Function from within a Function
375(1)
Calling a Function by Property Assignment
376(2)
The JavaScript Core Function Object
378(2)
The arguments[i] Array Property of a Function
380(4)
Nesting a Function within a Function
384(2)
Summaries Charts
386(3)
Predefined JavaScript Objects
386(1)
Predefined JavaScript Arrays as Object Properties
387(1)
Predefined JavaScript Core Objects
388(1)
Predefined JavaScript Core Functions
388(1)
The JavaScript Core Object
389(27)
The JavaScript Core Object Overview
389(1)
Creating Objects with its Constructor Function
390(2)
Creating Methods for an Object
392(4)
An Object as a Property in an Object Definition
396(3)
The prototype Property to add a Method to an Object Type
399(3)
Add a Property to an Object Instance after it is defined
402(1)
The prototype Property to add a Property to an Object Type
402(2)
Indexing Properties of an Object
404(3)
Creating Objects with Literal Notation
407(4)
Deleting an Object
411(1)
The watch() Method of the Core Object
411(4)
The unwatch() Method of the Core Object
415(1)
Predefined JavaScript Objects
416(51)
The JavaScript window Object
416(6)
The open() Method of the window Object
422(5)
The close() Method of the window Object
427(3)
The scrollBy() Method of the window Object
430(2)
The JavaScript document Object
432(4)
The cookie Property of the document Object
436(9)
The JavaScript screen Object
445(2)
The JavaScript Location Object
447(5)
The JavaScript History Object
452(4)
The JavaScript navigator Object
456(1)
Creating Frames on the fly
457(3)
The JavaScript Number Core Object
460(2)
The JavaScript select Object
462(2)
The JavaScript options[i] Array
464(1)
The JavaScript option Object
465(2)
New JavaScript Core Functions
467(4)
The JavaScript Number Core Functions
467(1)
The JavaScript String Core Function
468(3)
Statements & Operators
471(50)
JavaScript Statements
473(2)
What are JavaScript Statements
473(1)
Categories of Statements
473(1)
Chart of all JavaScript Statements
474(1)
Conditional Statements
475(9)
The JavaScript if() Statement
475(2)
The JavaScript if()...else Statement
477(1)
Nested if() Statement
478(1)
Nested if ()...else Statement
479(1)
The ()?: Conditional Operator Statement
480(1)
The switch() Statement
481(3)
Loop Statements
484(14)
The for() Statement
484(2)
The while() Statement
486(2)
The do while() Statement
488(2)
The labeled: Statement
490(1)
The break Statement
491(3)
The continue Statement
494(4)
Object Manipulation Statements
498(10)
The for...in Statement
498(2)
The with() Statement
500(2)
The with() Statement in a <STYLE> Element
502(1)
The var Statement
503(2)
The function Statement
505(1)
The return Statement
506(1)
The export Statement
506(1)
The import Statement
507(1)
The delete Statement
508(1)
Comment Statements
508(1)
Single & multiple-line Comment Statements
508(1)
JavaScript Operators
509(9)
What are JavaScript Operators?
509(1)
Categories of Operators
510(1)
Special Operators
510(1)
The Keyword new Operator
510(1)
The Keyword this Operator
510(2)
The Keyword typeof Operator
512(2)
The Keyword void Operator
514(1)
The (,) comma Operator
514(1)
Comparison Operators
515(1)
Arithmetic Operators
515(1)
String Operators
516(1)
Logical Operators
516(1)
Assignment Operators
517(1)
Bitwise Operators
517(1)
JavaScript Expressions
518(3)
JavaScript Events
521(158)
Event Objects & Handlers
524(19)
The JavaScript Event Model
524(1)
JavaScript Event Objects and Event Handlers
525(1)
Event Properties Summaries Chart
526(1)
Modifiers Keys and ASCII Values Chart
527(1)
The Structure of an Event Object
527(1)
Specifying an Event by name with dot notation
528(1)
Available Event Properties for each Event Object
529(1)
Defining Event Handlers
530(1)
Defining Event Handlers by Property Assignment
530(1)
Testing for Modifiers Keys in Conditionals
530(2)
Defining Event Handlers by Attribute Assignment
532(1)
The JavaScript event Keyword
532(2)
Testing for Multiple Modifiers Keys in Conditionals
534(1)
Testing for Modifers Keys pressed during Mouse Events
535(1)
The load() Method of the Layer Object with Key Events
536(2)
The fromCharCode() Method of the String Object with Key Events
538(2)
Using Modifiers Keys with Regular Keys to Trigger Events
540(1)
Determining the ASCII Value of a Pressed Key
541(2)
Capturing & Releasing Events
543(79)
The JavaScript captureEvents() Method
543(1)
Capturing Events in Nested Layers
543(1)
The JavaScript releaseEvents() Method
544(1)
Using the type Property and captureEvents() Method on a Layer
544(3)
Dragging an Image with the Mouse
547(2)
The name Property of the target Property of the Event Object
549(4)
Capturing Events for the window Object to Drag an Image
553(3)
Using Localized Scripts to Drag an Image
556(1)
The Chess Game Example
556(24)
Capturing and using Keypress and Keyup Events
580(1)
Tic Tac Toe played from the Keyboard
580(6)
Using the JavaScript switch() Statement & KEYDOWN, KEYPRESS, and KEYUP Events
586(2)
Moving Layers with the switch() Statement
588(2)
Animating Layers and Images
590(1)
Animating Layers automatically and by clicking on an Image
591(4)
Animating Layers with the e.target.name Property
595(9)
Animating Layers in a Frameset environment
604(5)
Controlling an External Frame document with JavaScript
609(1)
The JavaScript linkColor, alinkColor and vlinkColor Properties
610(1)
Using Key Events to hide and show Layers
610(12)
Scrolling, Resizing, & Moving Windows with Key Events
622(41)
The JavaScript scrollBy() Method
622(1)
The JavaScript scrollTo() Method
622(1)
Controlling your Window with a variety of Methods
623(5)
ASCII Values for the which Property of the Event Object
628(20)
Using Key Events to open a new Window
648(2)
Creating user-customizable Documents
650(11)
Drag on a Layer to Resize it
661(2)
Routing & Handling Events
663(16)
The JavaScript routeEvent(e) Function
663(1)
Using the JavaScript routeEvent(e) Function
663(5)
The JavaScript handleEvent(e) Method
668(1)
Using the JavaScript handleEvent(e) Method
669(4)
Handling and Routing Events in Nested and Unnested Layers
673(6)
JavaScript Arrays
679(68)
JavaScript Array Objects
681(15)
The JavaScript Array Object
681(1)
Create an Array with the Array Object Constructor
681(2)
Create a dense Array
683(2)
Create an Array with Literal notation
685(2)
Creating Two-Dimensional Arrays
687(3)
Creating Three-Dimensional Arrays
690(3)
Array Property Summaries
693(1)
Array Method Summaries
693(1)
An Overview Example that uses all of the Array Methods
694(2)
Array Object Methods
696(33)
The concat() Method of the Array Object
696(7)
The join() Method of the Array Object
703(2)
The pop() Method of the Array Object
705(2)
The push() Method of the Array Object
707(2)
The shift() Method of the Array Object
709(2)
The unshift() Method of the Array Object
711(2)
The slice() Method of the Array Object
713(3)
The splice() Method of the Array Object
716(3)
The toString() Method of the Array Object
719(1)
The toString() Method of the Array Element
719(3)
The reverse() Method
722(1)
The sort() Method
722(1)
The compareFunction Function
723(6)
Working with returned Arrays
729(18)
Working with returned Arrays and Regular Expressions
729(1)
The returned Array from the match() Method of String Objects
729(2)
The returned Array from the match() Method with the ``g'' Flag
731(2)
The returned Array from the exec() Method of RegExp Objects
733(2)
The index Property of the Array Object
735(1)
The returned Array from the split() Method of String Objects
736(3)
The input Property of the Array Object
739(1)
Using Arrays to fill <Table> Element Data Dynamically
740(5)
Chart of Sample Files that use Arrays
745(2)
JavaScript Strings
747(54)
JavaScript String Objects
749(6)
The JavaScript String Object
749(1)
String Object Property Summaries
750(1)
String Object Method Summaries
750(2)
Using the String Object Constructor Function
752(1)
Create a String Object with Literal notation
752(1)
JavaScript Special Characters in Strings
753(1)
String Object Character Array
754(1)
Manipulative String Object Methods
755(15)
The concat() Method of String Object
755(4)
The charAt() Method of String Object
759(2)
The charCodeAt() Method of String Object
761(2)
The fromCharCode() Static Method of String Object
763(3)
The indexOf() Method of String Object
766(3)
The lastIndexOf() Method of String Object
769(1)
String Object Methods used with Regular Expressions
770(18)
The search() Method of String Object
771(3)
The match() Method of String Object
774(4)
The replace() Method of String Object
778(4)
The split() Method of String Object
782(6)
More String Object Methods
788(6)
The slice() Method of String Object
788(2)
The substring() Method of String Object
790(2)
The substr() Method of String Object
792(2)
Creating Anchors & Links
794(3)
The anchor() Method of String Object
794(1)
The link() Method of String Object
795(2)
Decorative Methods of String Object
797(4)
Overview
797(1)
The toLowerCase() Method of String Object
797(1)
The toUpperCase() Method of String Object
798(1)
The fontcolor() Method of String Object
798(1)
The fontsize() Method of String Object
798(3)
JavaScript RegExps
801(52)
JavaScript RegExp Objects
803(1)
Regular Expression Objects Overview
803(1)
Predefined RegExp Object
804(4)
The Predefined RegExp Core Object
804(1)
The input Property of the Predefined RegExp Core Object
805(1)
The multiline Property of the Predefined RegExp Core Object
806(1)
Property Summaries of the Predefined RegExp Core Object
807(1)
Individual RegExp Objects
808(45)
RegExp Objects created with Literal notation
808(1)
RegExp Objects created with its Constructor Function
809(1)
Patterns in Regular Expressions
810(1)
Literal Characters in Patterns in Regular Expressions
810(1)
Special Characters in Patterns in Regular Expressions
811(1)
Parentheses in Patterns in Regular Expressions
812(1)
Parenthesized SubStrings
812(1)
Exploring Regular Expressions
813(1)
Chart of all Special Characters for Regular Expressions
814(5)
Method Summary of Individual RegExp Objects
819(1)
Summary of String Methods used with Individual RegExp Objects
819(1)
Property Summary of Individual RegExp Objects
820(1)
The test() Method of Individual RegExp Objects
821(1)
When to test() or exec()
821(4)
The exec() Method of Individual RegExp Objects
825(5)
The compile() Method of Individual RegExp Objects
830(2)
The lastIndex Property of Individual RegExp Objects
832(6)
Example to verify phone number using Regular Expressions
838(2)
exec() & match() Method differences
840(3)
Example to verify name & address usign Regular Expressions
843(2)
A full Regular Expression example
845(2)
Creating a Search Engine example
847(6)
Part III JavaScript 1.3
What's New & Changed
853(48)
What's New in JavaScript 1.3 & Changed in JavaScript 1.2
855(3)
Overview of Features
855(1)
JavaScript 1.3 and ECMA-262 Compliance
855(1)
JavaScript 1.3 and Unicode
856(1)
Unicode Character Escape Sequences
857(1)
Changes to Objects
858(34)
Changes to the Array Object
858(1)
Changes to the Array Constructor
858(1)
Change to the length Property of Array Object
859(1)
New toSource() Method of Array Object
859(1)
Change to the toString() Method of Array Object
860(1)
Change to the push() Method of Array Object
861(1)
Change to the splice() Method of Array Object
861(1)
Changes to the Date Object
862(1)
Changes to the Date Constructor
862(1)
New Methods for the Date Object
863(12)
Changes to preexisting Methods of the Date Object
875(5)
Changes to the Function Object
880(1)
The apply() Method of the Function Object
880(6)
The call() Method of the Function Object
886(2)
Changes to the String Object
888(4)
New Method
892(2)
The toSource() Method for several Objects
892(2)
New Top-Level Properties
894(1)
Infinity Property
894(1)
NaN Property
894(1)
undefined Property
895(1)
New Top-Level Function
895(1)
isFinite() Function
895(1)
Changes to Top-Level Functions
896(1)
eval() Function
896(1)
New Operators
896(1)
The === Operator
896(1)
The !== Operator
897(1)
Changes to Operators
897(1)
The === Operator
897(1)
The !== Operator
897(1)
Changes to Conditional Test Behaviors
898(1)
Assignment Behaviors
898(1)
null and undefined Values for Objects
898(1)
Using the JavaScript Console to debug your code
898(3)
Part IV Resources
Appendix A HTML Primer 901(128)
Appendix B Color Names and Values 1029(10)
Appendix C Sample Files Referenced 1039(10)
Appendix D Language Abbreviations 1049(4)
Appendix E Charts 1053(46)
Appendix F Index 1099

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program