Spotlight | Reviews | Current Issue | Academy | Newsletter | Subscribe | Shop |
Departments

Partner Links
Make your own website
WinWeb OnlineOffice
Comparing prices of hardware is worth it.
Price Comparison
What:
Where:
Country:
vacatures Netherlands njobs Linux vacatures
arbeit Deutschland njobs Linux arbeit
work United Kingdom njobs Linux jobs
Lavoro Italia njobs Linux lavoro
Emploi France njobs Linux emploi
trabajo Espana njobs Linux trabajo

user friendly

Admin Magazine

ADMIN Network & Security

Subscribe now and save!

 ADMIN - Explore the new world of system administration! ADMIN is a smart, technical magazine for IT pros on heterogeneous networks. Each issue delivers technical solutions to the real-world problems you face every day. Learn the latest techniques for better:

  • network security
  • system management
  • troubleshooting
  • performance tuning
  • virtualization
  • cloud computing

 on Windows, Linux, Solaris, and popular varieties of Unix.

http://www.admin-magazine.com/

  linux-magazine.com » Issues » 2008 » 91 » AJAX Workshop  

Print this page. Recommend
Share

Picture Perfect

The previous examples have been restricted to simple HTML elements such as lists and tables. Widgets and functions that HTML does not provide natively can be programmed in JavaScript in combination with cascading style sheets.

Querying the mouse position allows the developer to implement tool tips and even drag and drop. Most JavaScript libraries include implementations.

This does not exhaust the capabilities of dynamic HTML, including graphics that legacy HTML could only implement by embedding bitmaps.

Figure 5 shows a tree structure drawn by JavaScript. Client-side dynamic graphics have a number of advantages compared with bitmaps: The resolution is not fixed and can thus be modified to reflect the browser's preset font size.


Figure 5: Better than bitmaps: The JavaScript graph dynamically reacts to font size changes while saving the bandwidth this would normally require.

User input can be visualized without server interaction, thus reducing the load on the server. Normally, much of a web server's bandwidth is consumed by serving up graphics.

HTML Extensions

Basically, there are two approaches to using JavaScript to create graphics. The greatest feature scope is offered by the XML-based graphics languages SVG [8], Canvas [9], and Vector Markup Language (VML) [10]. They can be embedded in HTML like normal graphics, but also can add typical graphical elements – such as lines, areas, or text at run time. They can thus respond interactively to user input like dynamic JavaScript-modified HTML.

Drawing programs such as Inkscape [11] or Karbon [12] will help you create a draft.

Unfortunately, multi-browser support is not guaranteed: None of the popular browsers support all three formats referred to here.

Firefox can handle SVG and Canvas, Safari just Canvas, and Internet Explorer just VML.

Google JavaScript has two libraries for SVG [13] or Canvas [14]; however, support on the Windows platform is not guaranteed.

Tried and Trusted Tools

Many diagrams or graphs can be created with JavaScript and the standard HTML and CSS tools, such as the tree graph in Figure 5.

The boxes are made up of freely positioned CSS div elements. If em is used as a unit instead of px (pixel) for placing and sizing, the box height, width, and position are based on the size of the letter "m."

The whole graph will then scale to reflect the text size without any effort on the developer's part.

Users can also easily scale the graphic up and down in most browsers with the mouse wheel.

Read full article as PDF » 070-074_ajax.pdf 512.67 kB


Comments


Print this page. Recommend
Share
Related Articles
Google Maps Exploring the Google Maps API
Graphviz Graph visualization with Graphviz
Tech Tools
Special Linux Magazine 3 for 1 Offer

Get 3 Issues + 3 DVDs for the price of a single issue!

Let Linux Magazine's hands-on, technical articles guide you in your daily Linux use. Check out bonus DVDs like Ubuntu, SUSE, or Fedora and save the download.

Only available for a limited time. Don't miss out!

more...