Porter's Workshop

Fight for your right to standards!

Yeah, it's a pretty bland-looking page, but it scores really high on the Doesn't-feel-like-sucking-a-pot-roast-through-a-garden-hose Bandwidth Scale. Please excuse any mess you run into; this is my development area, where I get to play. And I don't always put away my toys. Also, I make no guarantees as to what browsers support any of this.

« Back to my homepage.

Development Tools

640x480 Test Frame
Test your designs to make sure they'll fit on a 640x480 monitor.

JavaScript Color Palette
Input four hex-code colors in the bottom form and this script will show you a swatch palette with those colors on black and white backgrounds.

Color Picker
Blend two colors together, or view the tints and shades of a color from the Web-safe color palette. (An oldie, but a goodie.)


Experimentation

Standards-based Replacement for target="_blank" in External Links
Opening external links in a new window without using the target attribute.

Centering with CSS
Some demos of different methods for centering boxes horizontally and vertically in the browser window.

Painting with JavaScript
A little demo of a simple painting program using JavaScript and single-pixel GIFs.

Unlimited Multi-Frame Swapping
One JavaScript function to change the contents of any number of frames from one link. Note: This demo works, but check out the Multiframe Swapping With (or Without) a Time Delay demo below for an easier, more efficient way of doing it.

Scrolling Navigation
Playing with using JavaScript automated scrolling as a navigational method.

Hidden Text/Background Fade
This one's kinda neat. Check it out to see what I mean.


Apologies to Scott Adams

Babble Mailing List Demos

Modifying Select Lists on the Fly
Change the options that show up in a pull-down menu based on input from the visitor.

Built 01/20/00
Last modified: 12/12/04

Getting Confirmation Before Taking an Action
Loading a framed document directly to a named anchor from a page outside the frameset.

Built for Matt Hickerson, 01/19/00
Last modified: 12/12/04

Linking to a Named Anchor Within a Frameset
Loading a framed document directly to a named anchor from a page outside the frameset.

Built for Ram Ganesh, 01/12/00
Last modified: 12/12/04

Passing Form Input Through a Confirmation Page
Present visitors with a confirmation page after they've submitted a form, but before the data is processed, without losing their input along the way.

Built for Warren Wight, 11/01/99
Last modified: 12/12/04

Building a Status Bar into a Chromeless Window
A JavaScript/animated GIF status indicator for sites that use chromeless popup windows to show when the page is done loading.

Built for A.J. Briones, 07/19/99
Last modified: 12/12/04

Setting Form Elements from an Image Map
How to use an image map to collect form input.

Requested by Phill Price, 06/29/99
Last modified: 12/12/04

Using Non-parsed Header Scripts for "Href-less" Links
A CGI script to take the place of client-side tricks when you want to use a link for its onClick event handler, but not have it change the browser's location.

Requested by Nathan Teske, 06/15/99
Last modified: 12/12/04

Cross-Platform DHTML Moving Tractor
Moving an image across the screen with JavaScript that works in Netscape and Internet Explorer.

Requested by Jordan, 05/03/99
Last modified: 12/12/04

Opening a Pop-Up Window that Closes When the Visitor Clicks Back to the Main Window
Open a new window when a page loads, and close it when the visitor clicks back to the main window.

Requested by Amy, 04/22/99
Last modified: 12/12/04

Changing Link Colors
Changing the color of links from the page's standard link color using a combination of the font tag and CSS.

Requested by Nathan Teske, 01/27/99
Last modified: 12/12/04

Redirection Based on Frames Support
This is just a quick example of how you could redirect a visitor to either a frames or no-frames version of your site based on what their browser can handle.

Requested by Scott Marshall, 07/22/98
Last modified: 12/12/04

Turning Off Communicator's ALT text Pop-Ups
Keep those image mouseover tool-tip things from popping up in Netscape Communicator while still providing ALT text for text-based browsers.

Requested by Al Smith, 05/12/98
Last modified: 12/12/04

Inputting "Other" Data From Pull-Down Menu
A form that only lets you type in a text field when "Other" is selected from a list of states, and also remembers the value entered if the visitor changes to something else and then back to "Other."

Requested by Gil Kruger, 03/23/98
Last modified: 01/14/02

Opening a Pop-Up Window that Closes When Its Parent Document is Unloaded
Open a new window when a page loads, and close it when that page unloads.

Requested by Phil Scimone, 02/27/98
Last modified: 12/12/04

Multiframe Swapping With (or Without) a Time Delay
Swap multiple frames from one link with the ability to place a time delay on any of the swaps.

Requested by Erik Kittlaus, 02/19/98
Last modified: 12/12/04

JavaScript-Powered Quiz
A multiple-choice quiz that is scored using JavaScript.

Requested by Tari Akpodiete, 01/22/98
Last modified: 12/12/04

Loading Many Different Content Files into a Single Frameset Document by URL
Allow direct URL access to any level of a multi-frame site, or maintain a list of links to documents that use the same frameset without having to create a frameset document for each link.

Requested by Miguel Fuentes García, 01/21/98
Last modified: 12/12/04

Swapping Multiple Frames
A little demo of using JavaScript to change the contents of multiple frames from one link.

Requested by Erik Kittlaus, 01/20/98
Last modified: 12/12/04

Image Preload Status Bar
A status bar that shows visitors the progress of images loading into their cache on a preload page. This alternate version uses the images that are being loaded to build the status bar.

Requested by jEsTeR, 01/15/98
Last modified: 12/12/04

Caching Whole Pages
One way to preload entire pages into a visitor's cache while they read the contents of another page. (Requires Frames)

Requested by Andy Meng, 01/12/98
Last modified: 12/12/04

Scrolling/Non-Scrolling Frame
A way to make a non-scrolling frame turn into a scrolling frame by clicking on a link.

Requested by Caleb Fuller, 01/11/98
Last modified: 12/12/04

JavaScript Slide Show
An example of a JavaScript slide show that the visitor can start and stop.

Requested by Matthew Nash, 12/26/97
Last modified: 12/12/04

Dynamically Created Page Title
This example shows how to use JavaScript to include the current date in the title of a page.

Requested by Megan Oldfield, 12/04/97
Last modified: 01/14/02