home > portfolio 2 > code :: JavaScript Photo Gallery |
|
| ||||||||||||||||||||||||
features
overview
Original text continues... The gallery relies on 3 image sizes for display of the photographs: a small thumbnail which appears in thumbnail area of the display, on the left; a normal image which is displayed on the right either by the slide show engine or when the user selects one of the thumbnail images; an enlargement image which opens in a reusable window (which will float to the top when reloaded.) Due to space limitations I currently include only a sample of the enlargements; the magnifying glass icon on the LCD panel is ghosted or greyed out where an enlargement is not available. Otherwise selecting this icon will display the enlargement for the selected photograph. The virtual LCD panel is used to display text messages. During the initial loading of a gallery page the panel will respond to image onLoad events to provide status on download progress (the thumbnail and normal images are preloaded before the slide show starts.) Once the preloading is complete the LCD panel can display photograph data (shutter speed, aperture etc.) at high speed or arbitrary text commentary which is "typed" in real-time on the panel. At "normal" typing speed punctuation in the text strings is interpreted: a brief pause at commas; a longer pause for periods etc. Both of these text modes rely on simple JavaScript text strings that are stored in separate files (one per gallery page) which also contain the stubs for the photograph filenames allowing for automation of the image management. Finally the slide show engine monitors the mouse and interrupts all activity if there is any movement. This is done to allow the user time to reach some button or link on the gallery page before the slide show engine moves on to the next image or section. The engine notes where in the between-slide pause the interrupt occured so that it can continue more or less seemlessly if the mouse event does not result in a link activation. I.e. if the user moves the mouse early in the slide pause then most of the pause remains to be run while if the movement occurs at last possible moment in the pause only a short period of time is left once the slide show resumes. |
|||||||||||||||||||||||||
elements
JavaScript source: click
here
to have a look at the
|