I am trying to set up an random alternating background that changes periodically across the whole site. E.g. at any given point the random background image would be the same on every page for a period of time.
Currently I have background images that change every 30 mins with this javascript: (from here: http://www.blogfodder.co.uk/post/2008/01/JavaScript-CSS-Random-Background-Image.aspx)
The problem however is that each link randomizes the background on each new page.
function ChangeCSSBgImg() {
if (!document.getElementById) return false;
var MyElement = "bgimg"
var ImgPath = "../i/"
if (!document.getElementById(MyElement)) return false;
var random_images = new Array ();
random_images[0] = "bg1.jpg"; // these are the background images
random_images[1] = "bg2.jpg";
random_images[2] = "bg3.jpg";
random_images[3] = "bg4.jpg";
random_images[4] = "bg5.jpg";
var $header = document.getElementById(MyElement);
var $backgroundurl = $header.style.backgroundImage;
var ImgURL = "url(" + ImgPath + random_images[rand(random_images.length)] + ")";
if ($backgroundurl != ImgURL) {
$header.style.backgroundImage = ImgURL;
}
movement = setTimeout("ChangeCSSBgImg()",108000000);
}
/* random number generator */
function rand(n) {
return ( Math.floor ( Math.random ( ) * n ) );
}
/* Custom onload function */
function addLoadEvent(func) {
var oldonload = window.onload;
if (typeof window.onload != 'function') {
window.onload = func;
} else {
window.onload = function() {
oldonload();
func();
}
}
}
/* trigger onload */
addLoadEvent(ChangeCSSBgImg);