ÿþ<?xml version="1.0" encoding="utf-16"?> <!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" xml:lang="en"> <head> <title>Edgar R. Chavez .. JavaScript </title> <link rel="stylesheet" href="../erc01.css" type="text/css" /> </head> <body> <div id="top"> <img class="quill" src="../Images/myquill5.png" alt="myQuill"></img> <h2> Edgar R. Ch&aacute;vez</h2> <h3> JavaScript </h3> </div> <div class="NavigationLinks"> <hr class="myLine" /> <ul> <li><a href="../home.html"> Home </a></li> <li><a href="./computers.html"> Computers </a></li> </ul> <hr class="myLine" /> <ul> <li><a href="./pgmglangs.html"> Programming languages </a></li> <li><a href="./javascript.html"> JavaScript </a></li> </ul> <ul class="NavMargin1"> <li><a href="ajax.html"> Ajax </a></li> <li><a href="#articles"> Articles </a></li> <li><a href="../www/dom.html"> DOM </a></li> <li><a href="#ecmascript"> ECMAScript </a></li> <li><a href="#frameworks"> Frameworks </a></li> <li><a href="#functionalpgmg"> Functional programming </a></li> <li><a href="#ide"> IDE's </a></li> <li><a href="#log"> Log functions </a></li> <li><a href="#misc"> Miscellaneous </a></li> <li><a href="#patterns"> Patterns </a></li> <li><a href="#reference"> Reference </a></li> <li><a href="#resources"> Resources </a></li> <li><a href="#scripts"> Scripts </a></li> <li><a href="#testing"> Testing </a></li> <li><a href="#tutorials"> Tutorials </a></li> <li><a href="#utilities"> Utilities </a></li> </ul> <hr class="myLine" /> </div> <div class="InfoArea"> <div id="articles"> <span class="Subhead2"> Articles </span> <div class="Tab5"> <p><a href="http://www.alistapart.com/stories/alternate/"> Alternative Style: Working With Alternate Style Sheets </a> &nbsp; by Paul Sowden </p> <p><a href="http://slayeroffice.com/articles/innerHTML_alternatives/"> Alternatives to innerHTML </a> &nbsp; See also <a href="http://www.w3.org/TR/xhtml-media-types/"> XHTML Media Types</a> section A.22, Updating a document using innerHTML, and references to innerHTML in the following W3 links: <br /> &nbsp; <a href="http://www.w3.org/TR/WCAG-TECHS/SCR21.html"> SCR21: Using functions of the Document Object Model (DOM) to add content to a page </a> <br /> &nbsp; <a href="http://www.w3.org/TR/WCAG-TECHS/client-side-script.html"> Client-side Scripting Techniques for WCAG 2.0</a>, and <br /> &nbsp; <a href="http://www.w3.org/WAI/GL/WCAG20/WD-WCAG20-SCRIPT-TECHS-20050211/Overview.html"> Client-side Scripting Techniques for WCAG 2.0 </a> working draft (different link than the one above) </p> <p><a href="http://www.quirksmode.org/js/cookies.html"> Cookies </a> &nbsp; Functions to save, read and erase cookies. </p> <p><a href="http://javascript.crockford.com/"> Articles by Douglas Crawford</a> <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; <br /> &bull; <a href="http://javascript.crockford.com/prototypal.html"> Prototypal Inheritance in JavaScript </a> <br /> <p><a href="http://pastebin.com/NUMTTrKj"> The Future of JavaScript </a> &nbsp; Internal Google memo. See also <a href="http://www.dartlang.org/docs/technical-overview/index.html"> Dart</a>, Google's answer to JavaScript. </p> &bull; <a href="http://javascript.crockford.com/private.html"> Private Members in JavaScript </a> </p> <p><a href="http://tool-man.org/examples/sorting.html"> Drag &amp; Drop Sortable Lists with JavaScript and CSS </a></p> <p><a href="http://tool-man.org/examples/edit-in-place.html"> Edit in Place with JavaScript and CSS </a></p> <p><a href="http://ejohn.org/projects/flexible-javascript-events/"> Flexible Javascript Events</a> &nbsp; by John Resig. See also other articles on <a href="http://ejohn.org/">this site.</a></p> <p><a href="http://alphaworks.ibm.com/tech/dbcjs/?open&amp;S_TACT=105AGX08&amp;S_CMP=HP"> IBM Database Connectivity for JavaScript </a> &nbsp; A JavaScript API and implementation that enables Web clients to use an Ajax style of programming to directly access server-side relational data without compromising enterprise security. </p> <p><a href="http://www.alistapart.com/articles/bodyswitchers"> Invasion of the Body Switchers </a> &nbsp; by Andy Clarke, James Edwards. A follow-up to the <a href="http://www.alistapart.com/stories/alternate/"> Alternative Style </a> article above. </p> <p><a href="http://www.brockman.se/writing/method-references.html.utf8"> Object-Oriented Event Listening through Partial Application in JavaScript </a> &nbsp; By Daniel Brockman. This article presents a solution to the problem of attaching event listeners to HTML elements owned by a JavaScript object. The solution is to connect the HTML elements to the application logic through lexical closures rather than through hidden backreferences. </p> <p><a href="http://archive.devwebpro.com/devwebpro-39-20030514OptimizingJavaScriptforExecutionSpeed.html"> Optimizing JavaScript For Execution Speed </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; By Andy King. </p> <p><a href="http://www.websiteoptimization.com/speed/10/"> Optimizing JavaScript for Execution Speed </a> &nbsp; The same article as above, slightly repackaged and without author attribution. </p> <p><a href="http://www.digital-web.com/articles/seven_javascript_techniques/"> Seven JavaScript Techniques You Should Be Using Today </a></p> <p><a href="http://adactio.com/articles/1151/"> Using DOM Scripting to Plug the Holes in CSS </a> &nbsp; by Jeremy Keith. </p> <p><a href="http://developer.mozilla.org/en/docs/Traversing_an_HTML_table_with_JavaScript_and_DOM_Interfaces"> Traversing an HTML table with JavaScript and DOM Interfaces </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; Mozilla Development Center. This article is an overview of some powerful, fundamental DOM level 1.0 methods and how to use them from JavaScript. You will learn how to create, access and control, and remove HTML elements dynamically. The DOM methods presented here are not specific to HTML; they also apply to XML. </p> </div></div> <div id="ecmascript"> <span class="Subhead2"> ECMAScript </span> <div class="Tab5"> <p><a href="http://www.ecma-international.org/publications/standards/Ecma-262.html"> ECMAScript Languae Specification </a> &nbsp; Download the <a href="http://www.mozilla.org/js/language/E262-3.pdf"> PDF 3rd Edition </a></p> <p><a href="http://www.lugrin.ch/fesi/index.html"> FESI </a> &nbsp; A full implementation of the first version of <a href="http://www.ecma-international.org/publications/standards/Ecma-262.html"> ECMAScript. </a> EcmaScript is largely equivalent to JavaScript 1.1 or to the core part of JScript, but without the navigator-specific extensions. FESI consists of a set of Java packages , allowing to use ECMAScript as a macro language for Java applications, and of an interactive interpreter usable from the command line to test ECMAScript programs. </p> </div></div> <div id="frameworks"> <span class="Subhead2"> Frameworks </span> <div class="Tab5"> <p><a href="http://dean.edwards.name/weblog/2006/03/base/"> A Base Class for JavaScript Inheritance </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; By Dean Edwards. This article describes the <a href="http://dean.edwards.name/base/Base.js"> Base </a> library. A more current version is <a href="http://code.google.com/p/base2/"> base2</a>, where you can find find links to downloads, <a href="http://base2.googlecode.com/svn/doc/base2.html#/doc/!base2">documentation</a>, and Dean's <a href="http://dean.edwards.name/weblog/category/base2/">original weblog entries</a>, which are interesting.</p> <p><a href="http://dean.edwards.name/my/cssQuery/"> cssQuery </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; A powerful cross-browser JavaScript function that enables querying of a DOM document using CSS selectors. All CSS1 and CSS2 selectors are allowed plus quite a few CSS3 selectors. See also other entries on Dean Edwards' <a href="http://dean.edwards.name/weblog/"> weblog</a>. <b>Code worth studying. </b></p> <p><a href="http://www.cross-browser.com/"> Cross-Browser.com </a> &nbsp; Home of the <a href="http://www.cross-browser.com/x/lib/">X Library</a>, a collection of loosely-bound, cross-browser Javascript functions and objects which you pick and choose - you do not have to include the entire library in your application. The library contains core DOM/Style functions, unobtrusive enhancements, utility functions, objects such as menus and tab panels, and more. </p> <p><a href="http://dojotoolkit.org/"> Dojo </a> &nbsp; The JavaScript Toolkit. Dojo is an Open Source DHTML toolkit written in JavaScript. It builds on several contributed code bases (nWidgets, Burstlib, f(m)). Dojo allows you to easily build dynamic capabilities into web pages and any other environment that supports JavaScript. </p> <p><a href="http://echo.nextapp.com/site/"> Echo </a> &nbsp; Echo is an open-source framework for developing rich web applications. From the developer's perspective, Echo behaves as a user interface toolkit--like Swing or Eclipse SWT. AJAX technology is employed to deliver a user experience to web clients that approaches that of desktop-based applications. Applications can be created (in Echo2 and Echo3) entirely in server-side Java code using a component-oriented and event-driven API, or (in Echo3) as client-side applications written in JavaScript. </p> <p><a href="http://www.extjs.com/"> Ext JS </a> &nbsp; A cross-browser JavaScript library for building rich internet applications. Commercial and Open Source licenses available. </p> <p><a href="./pgmglangsalpha.html#flapjax"> Flapjax </a></p> <p><a href="http://www.bbc.co.uk/glow/"> Glow, </a> &nbsp; the BBC JavaScript library, is available under the Apache Licence. You can use it in nearly all circumstances, and you can modify it as you see fit. Glow gives you: </p> <ul class="noLineBreak"> <li> Simplified DOM manipulation, event handling, animations, etc </li> <li> A versatile set of user interface widgets </li> <li> Clear and comprehensive documentation </li> <li> BBC Browser Support Standards compliance </li> </ul> <p><a href="http://jquery.com/"> jQuery </a> &nbsp; A fast, concise, JavaScript Library that simplifies how you traverse HTML documents, handle events, perform animations, and add Ajax interactions to your web pages. jQuery is designed to change the way that you write JavaScript. See also the <a href="http://www.gscottolson.com/weblog/2008/01/11/jquery-cheat-sheet/"> jQuery 1.2 Cheet Sheet </a> and <a href="http://simonwillison.net/2007/Aug/15/jquery/"> jQuery for JavaScript programmers </a></p> <p><a href="http://www.openjsan.org/"> JSAN - JavaScript Archive Network </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; Our vision is simple and unified. Bring the joy of collaborative open source development to JavaScript, a unique and independent programming language with potential in all areas of modern development. The <a href="http://openjsan.org/doc/c/cw/cwest/JSAN/0.10/lib/JSAN.html"> JSAN Library </a> allows JavaScript to behave more like traditional programming languages and offers the programmer the abilility to create well-designed, modular code. </p> <p id="livelykernel"><a href="http://www.lively-kernel.org/"> Lively Kernel </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; A complete platform for web applications, including dynamic graphics, network access, and development tools. It can change itself and create new content, it can save new artifacts, and even clone itself onto new web pages. The Lively Kernel is intended to run in every commercial web browser client with no plug-ins or installation whatsoever. Originally developed at <a href="http://labs.oracle.com/projects/lively/"> Sun Labs</a> by Dan Ingalls. </p> <ul class="noLineBreak"> <li><a href="http://labs.oracle.com/projects/lively/tutorial/index.htm"> Interactive tutorial </a></li> <li><a href="http://www.lively-kernel.org/development/media/LivelyKernel-TechnicalOverview.pdf"> Technical overview </a></li> <li><a href="http://www.springerlink.com/content/c48378251j2vjq07/"> The Lively Kernel A Self-supporting System on a Web Page </a> &nbsp; By Daniel Ingalls, Krzysztof Palacz, Stephen Uhler, Antero Taivalsaari, and Tommi Mikkonen. Lecture Notes in Computer Science, 2008, Volume 5146/2008. </li> <li><a href="http://lively.cs.tut.fi/qt/"> Lively for Qt </a> &nbsp; Lively Kernel built on top of <a href="http://qt.nokia.com/"> Qt </a></li> <li><a href="http://research.sun.com/projects/lively/LivelyKernel-SourceCode-0.8.1.zip"> Source code </a> &nbsp; Version 0.8.1, available through a GPL license. </li> <li><a href="http://en.wikipedia.org/wiki/Lively_Kernel"> Wikipedia article </a></li> </ul> <p><a href="http://www.prototypejs.org/"> Prototype </a> &nbsp; A JavaScript Framework that aims to ease development of dynamic web applications. Features a unique, easy-to-use toolkit for class-driven development and the nicest Ajax library around. See also <a href="http://www.sitepoint.com/article/painless-javascript-prototype"> Painless JavaScript Using Prototype </a> for a whirlwind tour of the whole library and enough examples and resources to get started using Prototype. </p> <p><a href="http://qt.nokia.com/"> Qt </a> &nbsp; Qt allows you to write advanced applications and user interfaces once, and deploy them across desktop and embedded operating systems without rewriting the source code saving time and development cost. Whether you prefer C++ or JavaScript, Qt provides the building blocks. </p> <p><a href="http://script.aculo.us/"> script.aculo.us </a> &nbsp; An add-on to the Prototype framework. Cross-browser user interface JavaScript libraries: Animation, drag and drop, Ajax controls, DOM utilities, and unit testing. </p> <p><a href="http://openrico.org/"> Rico </a> &nbsp; JavaScript for rich Internet applications. Based on Prototype. Provides: components, animation effects, behaviors, styling, drag and drop, and Ajax support.</p> <p><a href="http://trimpath.com/"> TrimPath </a> &nbsp; Open-source components for building the next generation of rich web applications. </p> <p><a href="http://www.whitebeam.org/"> Whitebeam </a> &nbsp; An Open Source Web Application Server aimed to reduce the development cost of sophisticated web applications. The Whitebeam architecture integrates two popular and robust Open Source platforms - Apache and Mozilla's SpiderMonkey JavaScript engine - with it's own powerful XML environment and security architecture. The XML environment provides both event driven and DOM based manipulation of XML trees along with the powerful XPath querying language - all controlled via simple server-side JavaScript interface. </p> <p><a href="http://developer.yahoo.com/yui/"> The Yahoo! User Interface Library (YUI) </a> &nbsp; A set of utilities and controls, written in JavaScript, for building richly interactive web applications. YUI is freely available under a BSD license. See in particular <a href="http://developer.yahoo.com/yui/yuitest/"> YUI Test</a>, a framework that allows you to add unit testing to your JavaScript code even if you use other libraries. </p> </div></div> <div id="functionalpgmg"> <span class="Subhead2"> Functional programming </span> <div class="Tab5"> <p><a href="http://www.ibm.com/developerworks/web/library/wa-javascript.html"> Use functional programming techniques to write elegant JavaScript </a> &nbsp; By Shantanu Bhattacharya. IBM developerWorks. </p> <p><a href="http://osteele.com/archives/2007/07/functional-javascript"> Functional JavaScript </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; By Oliver Steele. A JavaScript library for functional programming. It defines the standard higher-order functions map, reduce, and filter, functions for partial function application and function-level programming (curry, partial, compose, guard, and until). It also introduces <i>string lambdas</i>, which let you write <i>'x -> x+1', 'x+1'</i>, or <i>'+1'</i> as synonyms for <i>function(x) {return x+1}</i>. </p> <p><a href="http://www.hunlock.com/blogs/Functional_Javascript"> Functional JavaScript </a> &nbsp; An article by Patrick Hunlock. </p> </div></div> <div id="ide"> <span class="Subhead2"> IDE's </span> <div class="Tab5"> <p><a href="http://www.aptana.com/studio"> aptana Studio </a> &nbsp; Unprecedented ease-of-use for Ajax libraries, JavaScript, DOM and CSS. Open source, including PHP and Ruby On Rails engines. Connect to and work with local and remote SQL databases. Code assist, debugging, source control, FTP. </p> </div></div> <div id="log"> <span class="Subhead2"> Log functions </span> <div class="Tab5"> <p><a href="http://openjsan.org/doc/p/pa/paul/Debug/Logger/0.01/lib/Debug/Logger.html"> Debug.Logger </a> &nbsp; by Paul Daniell. Createng a debugging window which maintains focus. The logger can be made to popup only when there are warnings, or it can be turned off. </p> <p><a href="http://www.getfirebug.com/logging.html"> Firebug </a> &nbsp; Firebug gives you a set of powerful logging functions that you can call from your own web pages. </p> <p><a href="http://www.alistapart.com/articles/jslogging"> JavaScript Logging </a> &nbsp; An article by David F. Miller, where he advocates logging in JavaScript with fvlogger, his own script. </p> <p><a href="http://earthcode.com/blog/2005/12/jslog.html"> JSLog </a></p> <p><a href="http://ajaxcookbook.org/javascript-debug-log/"> JavaScript Debug Log </a> From Ajax Cookbook </p> <p><a href="http://notesweb2.blogspot.com/2006/07/javascript-logger-console.html"> JavaScript Logger Console </a></p> <p><a href="http://www.timdown.co.uk/log4javascript/"> log4javascript </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; log4javascript is a JavaScript logging framework based on the Java logging framework <a href="http://logging.apache.org/log4j/1.2/index.html">log4j</a>. </p> <p><a href="http://www.servletsuite.com/servlets/jslog.html"> JavaScript log servlet 1.2 </a> &nbsp; This servlet lets you log data right from your JavaScript code. You can use Ajax for asynchronous transferring data from your JavaScript code to the servlet; the servlet will record into a log file and display on its own GUI. </p> <p><a href="http://www.the-art-of-web.com/javascript/ajax-onerror/"> Using XMLHttpRequest to log JavaScript errors </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; This article tells you how to log any JavaScript errors that occur on your site to a text file that you can later view or download. JavaScript errors may be user-, browser- or platform-specific. </p> </div></div> <div id="misc"> <span class="Subhead2"> Miscellaneous </span> <div class="Tab5"> <p><a href="http://advanceddomscripting.com/source-live/"> Advanced DOM Scripting </a> Live source from the book. </p> <p><a href="http://icant.co.uk/sandbox/bonsaimenu/index.html"> bonsai - a loopless tree menu using Event Delegation </a> &nbsp; An example how to use Event Delegation instead of event handling to avoid having to loop through a lot of elements. </p> <p><a href="http://www.jibbering.com/faq/index.html"> comp.lang.javascript FAQ </a> &nbsp; Good set of resources and links. </p> <p><a href="http://developer.mozilla.org/en/docs/The_DOM_and_JavaScript"> The DOM and JavaScript </a> &nbsp; </p> <p><a href="http://www.merlyn.demon.co.uk/js-dates.htm#Head"> JavaScript Date and Time Introduction </a> &nbsp; by Dr. J. R. Stockton, Surrey, England. Very interesting and thorough. Be sure to check the links at the bottom of this page. </p> <p><a href="http://www.webstandards.org/action/dstf/manifesto/"> JavaScript Manifesto </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; JavaScript suffers from outdated, uninformed, and inaccessible development methods which preclude it from attaining its full potential. The DOM Scripting Task Force proposes to solve this problem by the adoption of unobtrusive DOM scripting, a way of thinking based on modern, standards-compliant, accessible web development best practices. Front end and back end developers will profit from this change of perspective; the most important benefits will accrue to end users, whether they use the latest and greatest desktop browser, screen readers, or other devices. </p> <p><a href="http://javascript-reference.info/"> javascript-reference.info </a> &nbsp; Interesting links, particularly for <a href="http://javascript-reference.info/javascript-guides-advanced.html"> advanced JavaScript guides. </a></p> <p><a href="http://daven.se/usefulstuff/javascript-obfuscator.html"> Open Source Javascript Obfuscator </a></p> <p><a href="http://javascript.crockford.com/little.html"> The Little JavaScripter </a> &nbsp; Describes a Scheme interpreter written in JavaScript. The interpreter can be run online. </p> <p><a href="http://simonwillison.net/tags/javascript/"> Simon Wilson's Weblog </a> &nbsp; More than 200 entries, some of them very good. </p> <p><a href="http://peter.michaux.ca/article/5004"> Transitioning from Java Classes to JavaScript Prototypes </a> &nbsp; This article shows an example using the observer pattern coded several ways in both Java and JavaScript to compare and contrast the various code-reuse strategies. See also <a href="http://peter.michaux.ca/article/1"> Class-Based Inheritance in JavaScript. </a></p> <p><a href="http://www.davidflanagan.com/javascript5/"> Examples from <i>JavaScript: The Definitive Guide, Fifth Edition</i></a></p> </div></div> <div id="patterns"> <span class="Subhead2"> Patterns </span> <div class="Tab5"> <p><a href="http://www.webreference.com/programming/javascript/ncz/column5/"> Design patterns in JavaScript </a></p> </div></div> <div id="reference"> <span class="Subhead2"> Reference </span> <div class="Tab5"> <p><a href="http://jibbering.com/faq/faq_notes/closures.html"> Closures </a></p> <p><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference"> Core JavaScript 1.5 Reference </a> &nbsp; Mozilla Developer Center. Complete documentation for JavaScript 1.5 and updates for JavaScript 1.6.</p> <p><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Guide"> Core JavaScript 1.5 Guide </a> &nbsp; Mozilla Developer Center.</p> <p><a href="http://mozilla.org/js/language/js20/index.html"> JavaScript 2.0 </a> &nbsp; Language definition </p> <p><a href="http://marcuswestinblog.blogspot.com/2007/12/javascript-dom-event-handlers-right-way.html"> Javascript DOM Event Handlers - The Right Way </a> &nbsp; By Marcus Westin. </p> <p><a href="http://javascript.infogami.com/Javascript_in_Ten_Minutes"> JavaScript in Ten Minutes </a></p> </div></div> <div id="resources"> <span class="Subhead2"> Resources </span> <div class="Tab5"> <p><a href="http://www.webreference.com/js/"> Doc JavaScript </a></p> <p><a href="http://developer.mozilla.org/en/docs/JavaScript"> JavaScript </a> &nbsp; Mozilla Developer Center JavaScript page. </p> <p><a href="http://www.javascripter.net/faq/index.html"> JavaScript FAQ </a> &nbsp; at <a href="http://www.javascripter.net/">JavaScripter.net</a>. Check out also their <a href="http://www.javascripter.net/quiz/index.html"> quizzes</a> and <a href="http://www.javascripter.net/quiz/index.html">games</a> implemented in JavaScript. </p> <p><a href="http://www.wsabstract.com/"> JavaScript Kit </a> &nbsp; The Javascript technology center. </p> <p><a href="http://research.nihonsoft.org/javascript/index.nsp"> nihonsoft Research </a> &nbsp; Resources for JavaScript/ECMAScript. Several books -- references and guides for JavaScript 1.0 through 1.4 -- can be viewed online or downloaded. </p> <p><a href="http://developer.yahoo.com/yui/theater/"> YUI Theater </a> &nbsp; Videos available for download, on various web-related topics. The ones on JavaScript by Douglas Crawford are highly recommended. </p> </div></div> <div id="scripts"> <span class="Subhead2"> Scripts </span> <div class="Tab5"> <p><a href="http://javascript.internet.com/math-related/amortization2-calculator.html"> Amortization Calculator </a> &nbsp; Script available from The JavaScript Source. </p> <p><a href="http://code.gosu.pl/"> code.gosu.pl </a> &nbsp; By Cezary Tomczak. Contents: web search aggregetor, JsDecoder (output in color-coded syntax), JsTetris, mygosuMenu (drop-down menu, bar menu, tree menu, windows menu), PHP Debug, and more. </p> <p><a href="http://www.browserland.org/scripts/htmlelement/"> Crossbrowser HTMLElement Prototyping </a> &nbsp; By Jason Karl Davis. Allow attaching functions and data to a DOM HTMLElement in browsers other than Firefox and Opera. </p> <p><a href="http://dean.edwards.name/download/"> Dean Edwards' download page </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; CSSQuery2, packer, and other stuff. See <a href="http://dean.edwards.name/my/cssQuery/"> cssQuery </a> for documentation. cssQuery() is a powerful cross-browser JavaScript function that enables querying of a DOM document using CSS selectors. All CSS1 and CSS2 selectors are allowed plus quite a few CSS3 selectors. </p> <p><a href="http://code.google.com/p/easy-designs/w/list"> Easy! Designs </a> &nbsp; LLC's Code Repository. </p> <p><a href="http://dean.edwards.name/weblog/2006/03/faster/"> Faster DOM Queries </a> By Dean Edwards. See also <a href="http://dean.edwards.name/weblog/2005/09/busted/"> The window.onload Problem - Solved!</a> and page 89 of <span class="InlineTitle">Pro JavaScripts Techniques</span> by John Reisig.</p> <p><a href="http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname/"> The Ultimate getElementsByClassName </a></p> <p><a href="http://simonwillison.net/2003/Mar/25/getElementsBySelector/"> getElementsBySelector() </a> &nbsp; A function which takes a standard CSS style selector and returns an array of elements objects that match that selector.</p> <p><a href="http://www.chipchapin.com/WebTools/JavaScript/"> JavaScript Tutorial Examples </a> &nbsp; by Ned Chapin. </p> <p><a href="http://www.huddletogether.com/projects/lightbox2/"> Lightbox2 </a> &nbsp; by Lokesh Dhakar. Lightbox is a simple, unobtrusive script used to overlay images on the current page. It's a snap to setup and works on all modern browsers. Uses prototye and scriptaculous. </p> <p><a href="http://miniajax.com/"> Mini Ajax </a> &nbsp; Nice-looking simple downloadable DHTML and Ajax code. </p> <p><a href="http://www.dustindiaz.com/top-ten-javascript/"> Top 10 custom JavaScript functions of all time </a></p> <p><a href="http://archive.bclary.com/xbProjects-docs/ua/"> ua </a> &nbsp; Deprecated browser-sniffer script. Useful when needed. </p> <p><a href="http://archive.bclary.com/xbProjects-docs/xbDOM/"> XBDOM </a> &nbsp; Cross Browser DOM API with support for Gecko based browsers, Internet Explorer 4+, Opera 5+, Netscape Navigator 4.x. Provide cross-browser functionality for basic operations in a cross browser fashion. Other interesting material available <a href="http://archive.bclary.com/xbProjects-docs/"> here</a></p> </div></div> <div id="testing"> <span class="Subhead2"> Testing </span> <div class="Tab5"> <p><a href="http://j3unit.sourceforge.net/"> J3Unit </a> &nbsp; An object-oriented unit testing framework for JavaScript. J3Unit runs JavaScript tests directly in the web browser and can be automated using JUnit and Jetty. J3Unit builds on previous work by JSUnit and Script.aculo.us to provide a better way to automate JavaScript unit tests. Object-oriented JavaScript unit tests are written using the Script.aculo.us Test.Unit.Runner object, which is in turn built upon the prototype JavaScript library. J3Unit has three3 modes of operation: static, local browser, and remote browser mode. </p> <p><a href="http://www.jsunit.net/"> JSUnit </a> &nbsp; A unit-testing framework for client-side (in-browser) JavaScript -- essentially a port of JUnit to JavaScript. Also included is a platform for automating the execution of tests on multiple browsers and mutiple machines running different operating systems. </p> <p><a href="http://openjsan.org/doc/t/th/theory/Test/Simple/"> Test.Simple </a> &nbsp; A testing framework in beta status (as of 03 05 2008). <a href="http://openjsan.org/doc/t/th/theory/Test/Simple/0.21/lib/Test/Simple.html"> Documentation </a> &nbsp; See also <a href="http://openjsan.org/doc/t/th/theory/Test/Simple/0.21/lib/Test/More.html"> Test.More</a>, a drop-in replacement for Test.Simple that provides a wide range of testing utilities. You can switch to it once you get the hang of basic testing. </p> </div></div> <div id="tutorials"> <span class="Subhead2"> Tutorials </span> <div class="Tab5"> <p><a href="http://developer.mozilla.org/en/docs/A_re-introduction_to_JavaScript"> A re-introduction to JavaScript </a> &nbsp; Mozilla Developer Center. </p> <p><a href="http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Guide"> Core JavaScript 1.5 Guide </a> &nbsp; Mozilla Developer Center. MDC's primary reference about how to program with JavaScript. Mozilla Developer Center </p> <p><a href="http://www.quirksmode.org/js/contents.html"> JavaScript </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; by Peter Koch, author of <span class="InlineTitle">PPK on JavaScript.</span> </p> <p><a href="http://www.webreference.com/programming/javascript/diaries/"> The JavaScript Diaries </a> &nbsp; Learn JavaScript from the beginning. Work in progress. At The JavaScript Source. </p> <p><a href="http://www.programmingtutorials.com/javascript.aspx"> JavaScript tutorials </a></p> <p><a href="http://www.evolt.org/article/Regular_Expressions_in_JavaScript/17/36435"> Regular Expressions in JavaScript </a> &nbsp; by David Andersson. A thorough introduction. </p> </div></div> <div id="utilities"> <span class="Subhead2"> Utilities </span> <div class="Tab5"> <p><a href="http://www.jslint.com/"> JSLint </a> &nbsp; <img src="../Images/stars4.gif" alt="Rank4" /> &nbsp; &nbsp; A JavaScript syntax checker and validator. By Douglas Crawford. <a href="http://www.jslint.com/lint.html"> Documentation</a>. JSLint takes a JavaScript source and scans it. If it finds a problem, it returns a message describing the problem and an approximate location within the source. The problem is not necessarily a syntax error, although it often is. JSLint looks at some style conventions as well as structural problems. It does not prove that your program is correct. It just provides another set of eyes to help spot problems. For additional information, see <a href="http://javascript.crockford.com/">David Crawford's homepage </a> and his book, <a href="http://www.amazon.com/exec/obidos/ASIN/0596517742/wrrrldwideweb">JavaScript: The Good Parts</a>.</p> <p><a href="http://www.crockford.com/javascript/jsmin.html"> JSMin </a> &nbsp; A filter which removes comments and unnecessary whitespace from JavaScript files. It typically reduces filesize by half, resulting in faster downloads. You can download an MS-DOS binary fle or source code in C, C#, Java, JavaScript, Perl, PHP, Python, OCAML, or Ruby. </p> <p><a href="http://dean.edwards.name/packer/"> Packer </a> &nbsp; A JavaScript Compressor, by Dean Edwards. More aggressive than JSMin. </p> <p><a href="http://code.google.com/p/trimpath/wiki/TrimBreakpoint"> TimBreakpoint </a> &nbsp; A super lightweight debugging utility for JavaScript. It temporarily stops code execution so that you can inspect browser variables at runtime, including any variable in scope. Part of <a href="http://trimpath.com/"> TrimPath. </a></p> <p><a href="Open Source Javascript Obfuscator"> YUI Compressor </a> &nbsp; Compress JavaScript and CSS. Excellent compression ratios. </p> </div></div> </div> <div class="MyCopyright"> <hr class="myLine" /> Copyright &copy; 2003-2011 by Edgar R. Ch&aacute;vez. All rights reserved. <hr class="myLine" /> </div> </body> </html>