วันพุธที่ 26 มีนาคม พ.ศ. 2551

DHTML-Introduction

Author : Eddie Traversa

Think of DHTML as not a singular technology but a combination of
three existing technologies glued together by the Document
Object Model (DOM):

1. HTML - For creating text and image links and other page
elements.

2. CSS - Style Sheets for further formatting of text and html
plus other added features such as positioning and layering
content.

3. JavaScript - The programming language that allows you to
accesses and dynamically control the individual properties of
both HTML and Style Sheets.

The way JavaScript accesses the properties of an HTML document
is through the Document Object Model (DOM). The job of the DOM
is to expose all the attributes of HTML and Style sheets to
JavaScript control. All you need to know about the DOM is what
JavaScript commands it accepts. Not that easy, as different
browsers have their slightly different versions of the DOM, so
they access HTML properties differently as well as display them
differently.

So how do you locate an HTML element on a page and change its
property? This is the job of JavaScript. Obviously, I cant into
all the details of JavaScript or the DOM, but here is an example
of how JavaScript can change a visibility of a style sheet layer
in both browsers.

Note: That every piece of HTML has a location much like a
directory in a phone book. When finding that piece of HTML you
have to go through the same hierarchy process of searching for a
name in the phone book such as

(state) Washington -> (City) Seattle -> (Listings) j -> (Name)
Jessica

In JavaScript, a reference to this would be equivalent to

washington.seattle.j.jessica

Now Jessica may have additional information such as her address
and phone number, so the JavaScript reference would be written
this way.

washington.seattle.j.jessica.address

or

washington.seattle.j.jessica.phone

Lets transcribe the above metaphor to a DHTML document that
contains a layer [myLayer] with style attributes
[top,left,width,height,z-index,visibility,etc] and the layer
contains a bit of text "myText" (Note that the visibility
attribute is set to hidden)

myText

In Netscape the address to the DIV layer "myLayer" is

document.myLayer

in Explorer it is

document.all.myLayer.style

The W3C way of identifying the address is

document.GetElementById(‘myLayer’).style

To access the properties such as visibility under "myLayer" you
would use these addresses.

Netscape

document.myLayer.visibility

Explorer

document.all.myLayer.style.visibility

W3C

document.getElementById(‘myLayer’).style.visibility

To change the visibility of this layer you would assign a value
to your JavaScript address.

Netscape

document.myLayer.visibility = "visible";

Explorer

document.all.myLayer.style.visibility = "visible";

W3C

document.getElementById(‘myLayer’).style.visibility=”visible”;

Now the previously hidden layer is now visible. This is
essentially how DHTML works, but understand there are hundreds
and hundreds of attribute properties for text, images, documents
and windows. Not all these properties are supported in both
browser and sometime accessing a property requires a few more
hurdles, but if you stick to the common denominator properties
both browser use then life it a bit easier. I recommend the
excellent DHTML reference book Dynamic HTML - The Definitive
Guide by Danny Goodman (O'Riley Books) It lists all of the DHMTL
properties and their cross browser compatibilities.

Category : Fitness Equipment

ไม่มีความคิดเห็น: