Search
Recommended Products
Related Links


 
 

 

 

Informative Articles

Advantages for Using FrontPage... maybe this HTML editor has some hidden advantages
Ever since I've been doing SEO work, I've always griped and complained about FrontPage and all the extraneous code it puts in the section of the page, etc. Then recently, I had the opportunity to visit with a group of advanced search...

Advantages for Using FrontPage (Part I)
Ever since I've been doing SEO work, I've always griped and complained about FrontPage and all the extraneous code it puts in the section of the page, etc. Then recently, I had the opportunity to visit with a group of advanced search engine...

Building your first Web Site
The ease with which visitors are able to use a Web Site is very important, especially if you`re trying to market something from the site. Usability is very much about how quickly and easily visitors are able to move around the site and not just...

Cross Browser Compatibility
There are literally hundreds of web browsers in use around the world. All of them implement the W3C document standards a little differently. Web designers must wrestle with these differences to make a web site work. This article discusses the...

Finding a Good HTML Editor
Once you've decided to write your own HTML, and you've got some idea of how it all works, there's one thing left to think about: which program are you going to use to do it? While you can use programs like Notepad or Wordpad that come with...

Learning HTML & HTML Editors
Learning HTML & HTML Editors by Kalina of Affordable Web Design I hold a firm belief that all webmasters should practice validating their code, so all advice I give in this site will be centered around that belief. If you'd like to...

MAMBO- a full-featured content management system
Content management systems (CMS) store and manage an organization's electronic document and Web content so that even the non-technical authors and employee of the company can reuse the information across different applications which is otherwise...

Popup: Hate 'em or Love 'em
You are browsing a favorite website when a popup window appears. You close the window to continue browsing, and another popup appears. Later on, you realize that several windows have opened because of these popups. Annoying, isn't it? Popup...

Showing and Hiding HTML elements using Layers
A long time back I visited a site that had a very fancy, animated navigation bar. Now, as a professional web developer, I'm not in favor of DHTML-supported, fancy navigation bars, but it was very fascinating. What they had done was, whenever you...

Web Design for the No-Talent Artist
Not everyone can hit a 90 mile per hour fast ball 400 feet. That's why there are so few major league baseball players. Most everyone enjoyed art class while in school, but we also realized there was probably only one in each classroom who actually...

 
 
 
DHTML-Introduction

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)

100px; height: 100px; z-index: 3; visibility: 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.

About the Author

Eddie Traversa
DHTML Nirvana http://nirvana.media3.net/ is a site
dedicated to exploring the possibilites of DHTML. It hosts free graphics,
dhtml templates and tutorials. Some of the tutorials emphasis is on
Flash/DHTML integration.