Andis BallMenuTM
|
||
|
Why JavaScript?Compared to HTML, JavaScript is a powerful programming language, allowing everything a programmer wishes for. First introduced by Netscape, it soon became a classic with status bar tickers and other knickknacks. Only recently computers became powerful enough to allow for rich graphical applications like Andis BallMenu to be developed in JavaScript. The combination of JavaScript and DHTML (Dynamic-HTML) proves to be a serious competitor for Sun's Java or Macromedia's Flash in web browser applications. Cross-browser JavaScriptUnfortunately, programming in JavaScript is not straight-forward because of different DHTML implementations by various browser vendors. Therefore a lot of programming is first invested into making browser-dependent routines transparent for the actual application. Today, a lot of tools are available for crossbrowser JavaScript development. I chose the Alladyn DHTML solution because of its small code-size and fastness. Since Alladyn is a cross-browser solution for placing graphical objects on the screen, additional routines were necessary for mouse interaction and window properties. The crossbrowser routines developed for Andis BallMenu include
These functions can be found in browserspecific.js. It is especially tricky to retrieve the content area: For Netscape and
Mozilla this property is retrieved by Concerned about speeed?A new way of handling functions allows for generating browser-specific code with almost no overhead. Traditionally, a browser-independent function for showing an object would look like this:
A new way of handling code like this is to let the function point to another
location (see below): Now the
These functions can be found in browserspecific.js. Supported browsersSo far Andis BallMenu was successfully tested under theses systems: Windows XP:
Windows 2000:
Linux:
Other cross-browser DHTML solutionsAndis BallMenu was developed using Alladyn. But there are other crossbrowser JavaScript solutions on the web you might want to have a look at too:
Notice about my JavaScript Code: You are free to use the
cross-browser specific part of my code in
browserspecific.js. If you want to use the JavaScript physics engine
ballnavigation.js or the
menu-preparation-module
menupreparation.js, I kindly ask you to
notify me and
put a link on your web-page pointing to this web-site (strange.itp.tuwien.ac.at/~ipp).
|
|
|