According to a joint press release by Netscape and Sun Microsystems, "JavaScript is an easy-to-use object scripting language designed for creating live online applications that link together objects and resources on both clients and servers. JavaScript is designed for use by HTML page authors and enterprise application developers to dynamically script the behavior of objects running on either a client or a server."
So now you know. <g>
Put simply, what this means is that by using JavaScript you can add things to your Web pages that in the past would have required access to complex CGI-based programs on a Web server. In many ways, JavaScript is a lot like Visual Basic for Applications the script developed by Microsoft for use in its Office suite in that people with little or no programming knowledge (like me) can use it. Visual Basic Script (similar to VBA), by the way, is also being touted by Microsoft as a rival to JavaScript; time will tell which will prove the most successful. In Internet Explorer 3.0 Microsoft provided roughly 90% compatibility with JavaScript, and are covering their bases by touting their own flavour, which they call JScript. Internet Explorer 4.0 added some more functionality, particularly in the handling of images, and a lot of their own, much of it superior to Netscape's in my opinion. Internet Explorer 5.x consolidates on this. In the meantime Netscape, in its own version 4.0 browser, moved on yet again. They are now on JavaScript v. 1.3. They introduced a series of functions based on the <layer> tag in competition to Microsoft's method. The W3C preferred Microsoft's implementation (or something close to it) and thankfully, Netscape 6, out as a Release Candidate as I write, has abandoned the methods introduced in version 4.0 and has adopted the standard.
I have tried to indicate if a script does not work with a particular browser, but it is possible I may have missed something out. Now that Opera Software have released their version 3.0 browser with JavaScript support, the problem becomes even more acute. Opera is supposed to have the same capability as Netscape 3.x, but I have discovered some scripts will not work properly, particularly in the earlier versions. Opera 4.x, though, is a lot better in this regard. Similarly, Sun's HotJava 3.0 has JavaScript support, but various idiosyncrasies mean that some scripts that work fine in the mainstream browsers fail in HotJava. WebTV also has JavaScript, but since it does not support a lot of standard HTML tags, results can be unpredictable.
If you let me know of any problems you encounter running the scripts on my site, I'll add an appropriate warning. In particular, I do not have access to Mac or Unix browsers, so any problems reported with those would be a bonus.
What makes JavaScript special is the way it integrates with the World Wide Web. Instead of being stored as a separate file like a CGI script JavaScript code is included as part of a standard HTML document, just like any other HTML tags and elements. Unlike CGI scripts, which run on the server, JavaScript scripts are run by the browser itself. They are therefore portable across any browser that includes JavaScript support, regardless of the operating system.
For more information on JavaScript, take a look at Netscape's JavaScript pages, or Microsoft's pages on JScript.