From Wikipedia, the free encyclopedia
This article is written like a manual or guidebook. Please help rewrite this article from a neutral point of view. (December 2008) |
DHTML allows scripting languages to change variables in a web page's definition language, which in turn affects the look and function of otherwise "static" HTML page content, after the page has been fully loaded and during the viewing process. Thus the dynamic characteristic of DHTML is the way it functions while a page is viewed, not in its ability to generate a unique page with each page load.
By contrast, a dynamic web page is a broader concept — any web page generated differently for each user, load occurrence, or specific variable values. This includes pages created by client-side scripting, and ones created by server-side scripting (such as PHP, Perl, JSP or ASP.NET) where the web server generates content before sending it to the client.
Contents[hide] |
[edit] Uses
DHTML allows authors to add effects to their pages that are otherwise difficult to achieve. For example, DHTML allows the page author to:- Animate text and images in their document, independently moving each element from any starting point to any ending point, following a predetermined path or one chosen by the user.
- Embed a ticker that automatically refreshes its content with the latest news, stock quotes, or other data.
- Use a form to capture user input, and then process and respond to that data without having to send data back to the server.
- Include rollover buttons or drop-down menus.
The term "DHTML" has fallen out of use in recent years as it was associated with practices and conventions that tended to not work well between various web browsers. DHTML may now be referred to as unobtrusive JavaScript coding (DOM Scripting), in an effort to place an emphasis on agreed-upon best practices while allowing similar effects in an accessible, standards-compliant way.
Basic DHTML support was introduced with Internet Explorer 4.0, although there was a basic dynamic system with Netscape Navigator 4.0. When it originally became widespread DHTML style techniques were difficult to develop and debug due to varying degrees of support among web browsers of the technologies involved. Development became easier when Internet Explorer 5.0+, Mozilla Firefox 2.0+, and Opera 7.0+ adopted a shared Document Object Model.
More recently JavaScript libraries such as jQuery have abstracted away much of the day-to-day difficulties in cross-browser DOM manipulation.
[edit] Structure of a web page
See also: DOM events
Typically a web page using DHTML is set up the following way:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>DHTML example</title> <script type="text/javascript"> function init() { myObj = document.getElementById("navigation"); // .... more code } window.onload=init; </script> </head> <body> <div id="navigation"></div> <pre> Often the code is stored in an external file; this is done by linking the file that contains the JavaScript. This is helpful when several pages use the same script: </pre> <script type="text/javascript" src="myjavascript.js"></script> </body> </html>
[edit] Example: Displaying an additional block of text
The following code illustrates an often-used function. An additional part of a web page will only be displayed if the user requests it.<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <title>Test</title> <style type="text/css"> h2 {background-color: green; width: 100%} a {font-size: larger; background-color: red;} a:hover {background-color: gold} #example1 {display: none; margin: 3%; padding: 4%; background-color: limegreen} </style> <script type="text/javascript"> function changeDisplayState (id) { d=document.getElementById("showhide"); e=document.getElementById(id); if (e.style.display == 'none' || e.style.display == "") { e.style.display = 'block'; d.innerHTML = 'Hide example..............'; } else { e.style.display = 'none'; d.innerHTML = 'Show example'; } } </script> </head> <body> <h2>How to use a DOM function</h2> <div><a id="showhide" href="javascript:changeDisplayState('example1')">Show example</a></div> <div id="example1"> This is the example. (Additional information, which is only displayed on request)... </div> <div>The general text continues...</div> </body> </html>
Tidak ada komentar:
Posting Komentar