When all the frames contain a document that loads the script, scrolling any frame will cause the other frames to scroll in synchronisation.
Scrolling is proportional, so if for example the user scrolls one frame to one third the scrollable length from the top, all other frames will scroll to one third their own scrollable length, no matter how different their lengths are.
Vertical and horizontal scrolling is supported simultaneously, and both work in the same way.
Within a given frame set, there is no limit to the number of frames that can be scrolled. Unscrollable frames cause no error.
When either the browser window or a frame is resized, to maintain correct synchronisation, all scripts will re-calibrate.
When a subsequent scrollable document is loaded into a frame, it will start at the top/left regardless of the position of other documents. Any subsequent scrolling will restore synchronisation.
No document from a different domain may be loaded into any frame set in which the script is running.
Scrolling cannot begin until all frames in a frame set have loaded a document that includes the script. Subsequently, unscripted pages may be loaded into the frame set, however these will not be synchronised. In the case where only one frame is left running the script, synchronised scrolling cannot resume until all other frames reload a scripted document.
If not already the case, the script should be saved in a separate plain text file with a .js extension.
All HTML files to be scrolled must include the script, by inserting the following tag pair within their <HEAD> section. This includes documents that may be loaded subsequently from links in the default documents.
If the .js file has a different name, it should be substituted accordingly:
If the script file resides in a different folder to the HTML files, a suitable path must be included in the src parameter.
No other configuration is required.