JavaScript Modules

Here are some modules written in JavaScript. Each module is at least partially my work, or is a dependency of a module on which I have worked. Those that are all my own work are licenced under The MIT Licence, whilst rot13.js is in the public domain, and sniffer.js is licenced under the GNU General Public Licence (GPL).

columns.js
Dynamic single or double column text flow. This module flows text in either one column or two, depending upon the horizontal space available in the window. It keeps the columns a comfortable width for reading, and places a margin to the left hand side if there is room. If there is room for only one column, the text from the second column is placed immediately following the first. Sections of text may be marked as flowing across both columns, and unmarked text will flow across the entire page regardless of the arrangement of columns.

Example: Ewan Mellor's CV.

Depends upon sniffer.js below.

Version: 1.4.
Licence: MIT.
Author: Ewan Mellor.
pngfix.js
Fix PNG rendering under IE 5.5 and upwards on Windows. Those versions of Internet Explorer render PNGs with a grey background wherever the picture should be transparent; this module fixes that.

Depends upon sniffer.js below.

Version: 1.3.
Licence: MIT.
Author: Ewan Mellor.
rot13.js
Routine to apply the rot13 text transformation.

Version: 1.3.
Licence: Public domain.
Authors: Ewan Mellor, Valentin Hilbig.
sniffer.js
Browser detection routines.

Version: 020725.
Licence: GPL.
Authors: Eric Krok, Andy King, Michel Plungjan.