Main Page
 The gatekeeper of reality is
 quantified imagination.

Stay notified when site changes by adding your email address:

Your Email:

Bookmark and Share
Email Notification
Project Javascript [Go Back]
Purpose
The purpose of this project is to demonstrate how you can build and use javascripts in web sites by studying ones that I've written. Javascript is a great tool that is not often capitalized upon, so get creative!

The Infamous "JIM Control"
Although I wrote this back in 2004, it is still amazing to see in action! With this javascript you can perform a WIDE variety of functions. Among them include creating virtual, javascript windows that are actually embedded inside of a web page, which you can control just like regular windows! Another great thing is that a visitor's "page state" is saved so when the visitor comes back, the windows rebuild themselves according to how they left them. With this javascript control, you'll also be able to read external stylesheets and manipulate XML data. This very powerful javascript shows some of the awesome power you have at your disposal when you have a good grasp of the javascript DOM. I developed this javascript so much that it has a programmer's manual with it.

What are you waiting for? Check out the demo and try out different things. This control is protected by U.S. Copyright so do not use it commercially; if you want to, contact me for permission.
Demo || Download Source Code (ZIP Format)

jsFiddle
Need to experiment with a javascript function you are creating? You may want to test it on this website.

Power Clone
Get sections of a webpage and clone it, including ensuring IDs remain unique and even updating inline javascript events that may be attached to the original!
Example || No Download Needed

Extract Form Element Data
With large webpages and forms, this shows a javascript way to get a specific block of form element data in the webpage instead of dealing with the entire form at once.
Example || No Download Needed

JS Fetch
Make fetch-based requests with Javascript, the newer standard that is replacing XMLHttpRequest. This code shows how simple it is to do.
Demo || No Download Needed

JS AJAX
Make ajax-based requests (XMLHttpRequest) with Javascript using GET and POST. This code shows how simple it is to do.
Demo || No Download Needed

Graph - Charting
Quickly create price / stock or other types of graphs using a small javascript file and dhtml; no need to use JQuery or other full-blown frameworks.
Demo || Download Source Code (ZIP Format)

jsModusCalendar
A very powerful web-based calendar system that you use on your website. The calendar works in all major browsers and includes starter server pages (to setup according to your requirements) in ASP, ASP.Net, Perl and PHP. Check out the demo!
Demo || Download Source Code (ZIP Format)

jsPageRoller
Scroll your webpage up or down smoothly with this rolling page scroller. It does not use an event handler and does not alter the browser's URL so you can keep things nice and clean!
Demo || No Download Needed

jsDocTypeDetect
Easily Detect the DOCTYPE (and attributes) of a webpage using Javascript for Internet Explorer, Firefox, Safari, Chrome and Opera.
Demo || No Download Needed

jsIFRAMELoadDetector
Detect when content in an IFRAME is loaded as well as accessing content in the IFRAME from the parent webpage for Internet Explorer, Firefox, Safari, Chrome and Opera.
Demo || Download Source Code (ZIP Format)

jsNav
Are you generating dynamic content on a web page (such as through AJAX or other methods) and would like to provide your visitors with the ability to navigate through that dynamically generated content without, for instance, making more AJAX calls? The jsNav can cache dynamically generated content and allows you to provide either back / forward buttons to go through that content, or a link trail. It is very simple to configure the jsNav for a variety of scenarios that may be desired. Try out the different scenarios to see how it works!
Demo || Download Source Code (ZIP Format)

jsPrint 2.0
Selectively print sections of a web page, combine different sections or print an entire web page. It's up to you. One of the things that makes this script cool (and 2.0'ish) is that no popup windows (which are spawned with javascript) are generated, which could be blocked by popup killers. Additionally, as print status changes, it is shown on your web page.
Demo || Download Source Code (ZIP Format) || Download Source Code revised for PeopleTools made by Rip McManus (ZIP Format)

jsClock
Very simple javascript which dynamically displays and updates the date and time on a web page.
Demo || Download Source Code (ZIP Format)

jsFontDetect
This script allows you to enter a font name in order to help determine if it is present and available to a web browser (very handy for detecting custom fonts that are not installed on everyone's systems). A secondary function will attempt to detect the presence of hundreds of fonts and generates a simple table of what was detected and what was not detected from its large list of font definitions.
Demo || Download Source Code (ZIP Format)

jsFormElements
This contains a series of small scripts demonstrating how to work with various forms and form elements dynamically through javascript.
Demo || No Download Needed

jsBrowsersDetect
This powerful detection script can detect not only web browsers such as Google Chrome, but also the visitor's computer operating system. Invaluable when you are developing very complex javascript operating across multiple browsers and systems.
Code || No Download Needed

jsBrowserVersionDetect
This detection script will message the visitor when their web browser is not a minimum version; Internet Explorer, Firefox, Chrome and Safari are supported.
Code || No Download Needed

jsMobileDeviceDetect
This detection script demonstrates how to detect popular mobile devices. This allows you to customize content such as redirecting users to a mobile equivalent of your website.
Code || No Download Needed

jsCommonValidation
Set of javascript functions which validate and filter data commonly associated with form fields.
Demo || Download Source Code (ZIP Format)

jsXSS
Learn how you can use javascript XSS (cross-site scripting) through the use of digital signatures. This allows you to take advantage of a signed javascript located at one website IN a different website.
Tutorial And Examples || No Download Needed

jsFixedDynamicData
Wouldn't it be cool to be able to generate a list of possible selections (which refines itself) as a user of your web site types into an input box? With this script, that relies upon you to supply the selection data, you can do it! This uses "fixed" data in that no repeated server requests are made for keypresses in order to conserve server load.
Demo || Download Source Code (ZIP Format)

jsFlexDynamicData
This expands upon jsFixedDynamicData in that it sends queries for data to a server-side script to get data instead of relying upon a static, unchanging set of data. Uses AJAX to send and receive data.
Demo || Download Source Code (ZIP Format)

jsMultiDimensional Arrays
Working with multidimensional arrays is an easy process (and could make your code simpler and easier to read). Learn how with this tutorial.
Tutorial And Examples || No Download Needed

jsHrefOverwrite
This contains a script demonstrating how to overwrite the "href" link value through javascript.
Demo || No Download Needed

jsGenPassword
Set of javascript functions to dynamically generate passwords of varying length using string data you provide.
Demo || Download Source Code (ZIP Format)

jsRemoveHTMLElement
Delete HTML elements from your webpage by referencing an element's unique ID.
Demo || No Download Needed

jsTextElementSearch
Locate and highlight all instances of a string within another string. With a little modification, this handy script could replace all instances of a string contained within another string with something different.
Demo || No Download Needed

jsFilterTxtReplace
Locate and replace all instances of a string within another string. This tutorial inserts functional and trackable checkboxes and with a few modifications it could insert something different.
Demo || Download Source Code (ZIP Format)

jsTextCursorEnd
Put the cursor at the end of a text string that works in Internet Explorer and Firefox.
Demo || No Download Needed

jsTextCountRemaining
Place a text remaining counter on a text field so your visitor knows how much they can type.
Demo || No Download Needed

jsDuplicateCharFilter
Remove sequential, duplicated characters in a string.
Demo || No Download Needed

jsSubmitValidator
Ensure web form validation with javascript happens even if visitors hit the enter key from a form element or dialog box.
Demo || Download Source Code (ZIP Format)

jsRangeFinder
With this script easily determine the nearest number of an array of numbers is closest to a number of interest.
Demo || No Download Needed

findMissingNumbersInSequence
If you find yourself needing to find the missing numbers in a single-dimensional array of numbers, this javascript function will do it for you.
Demo || No Download Needed

findMissingNumbersInArray
If you find yourself needing to find the missing numbers in a single-dimensional fragmented array of numbers given a separate, complete base array sequence, this javascript function will do it for you.
Demo || No Download Needed

findSecondHighestNumberInArray
If you find yourself needing to find the second highest number in a single-dimensional array of numbers, this javascript function will do it for you.
Demo || No Download Needed

removeDuplicatedNumbersInArray
If you find yourself needing to remove duplicated numbers in a single-dimensional array of numbers and retain the original ordering, this javascript function will do it for you.
Demo || No Download Needed

findHeadAndShouldersInArray
If you find yourself needing to find a head-and-shoulders pattern in a single-dimensional array of numbers, this javascript function will do it for you.
Demo || No Download Needed

splitArrayIntoApproxEqualSubsets - HOT
If you find yourself needing to split an array *set* (single-dimensional array of numbers) into two approximately equal-valued array *subsets*, this javascript function will do it for you.
Demo || No Download Needed

convertNumberToString
If you find yourself needing to convert a number to a string without using an array or .toString(), this javascript function will do it for you.
Demo || No Download Needed

sortBinaryArray
If you find yourself needing to sort a binary array, this javascript function will do it for you.
Demo || No Download Needed

alternateSignArray
If you find yourself needing to sort an array with randomly distributed positive and negative values in an alternating fashion, this javascript function will do it for you.
Demo || No Download Needed

determineIfAnagram
If you find yourself needing to determine if two words are an anagram, this javascript function will do it for you.
Demo || No Download Needed

findContiguousSubset - HOT
If you find yourself needing to determine if an array *set* is a contiguous sub-sequence of another array *set*, this javascript function will do it for you.
Demo || No Download Needed

findLargestPalindrome
If you find yourself needing to find the largest palindrome in a sentence, this javascript function will do it for you.
Demo || No Download Needed
About Joe
Find Out Now!