function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

<!--version-->
var version = 0;
if (navigator.userAgent.indexOf("MSIE 4") != -1)  version = 5;
else if
(navigator.userAgent.indexOf("MSIE 3") != -1)  version = 1;
else if
(navigator.userAgent.indexOf("Mozilla/4") != -1)  version = 4;
else if
(navigator.userAgent.indexOf("Mozilla/4.5") != -1)  version = 7;
else if
(navigator.userAgent.indexOf("Mozilla/3") != -1)  version = 3;
else if
(navigator.userAgent.indexOf("Mozilla/2") != -1)  version = 2;
else if
(navigator.userAgent.indexOf("MSIE 4.5") != -1)  version = 6;
else version = 8;
		
		
if (version > 3)
document.write('<div id="starburst1"><img src="burst1.gif" height="20" width="20" border="0" name="starburst1img"></div><div id="starburst2"><img src="burst1.gif" height="20" width="20" border="0" name="starburst2img"></div><div id="starburst3"><img src="burst1.gif" height="20" width="20" border="0" name="starburst3img"></div><div id="starburst4"><img src="burst1.gif" height="20" width="20" border="0" name="starburst4img"></div><div id="starburst5"><img src="burst1.gif" height="20" width="20" border="0" name="starburst5img"></div><div id="starburst6"><img src="burst1.gif" height="20" width="20" border="0" name="starburst6img"></div>')

NS4 = (("Netscape"==navigator.appName) && ("4"<=parseInt(navigator.appVersion)))
window.name = "main"

<!-- Hide script from older browsers	
setTimeout ("changePage()", 2000);

function changePage() {
if (self.parent.frames.length != 0)self.parent.location="http://www.chinesefireworks.co.uk/home.html"		}
// end hiding -->



	var isNS = (navigator.appName == "Netscape");
	layerRef = (isNS) ? "document" : "document.all";
	styleRef = (isNS) ? "" : ".style";
	
	var queue = new Array();
	var NUM_OF_TRAIL_PARTS = 6
	
	for (x=1; x < 7; x++) {	 ///////////////Image Preload
		eval("starburstFrame" + x + " = new Image(10,10);");
		eval("starburstFrame" + x + ".src = 'burst" + x + ".gif';");
	}

	////////////////////////////////////////////////The trail Object

	function starburstObj(anID) {
		this.starburstID = "starburst" + anID; //as before 
		this.imgRef = "starburst" + anID + "img"; //reference to the sprites image name
		this.currentFrame = 1; //the varible for looking after the frame
		this.animatestarburst = animatestarburst; //declare the objects method cycle
	}

	function animatestarburst() {
		if (this.currentFrame <7) {	//if there are animation frames left, the change sprites the current frame
			if (isNS) { 			//Detect the browser and perform coresponding image switch
				eval("document['"+ this.imgRef + "'].src  =  starburstFrame" + this.currentFrame + ".src");
			} else {
				eval("document['" + this.imgRef + "'].src  =  starburstFrame" + this.currentFrame + ".src");
			}
			this.currentFrame ++; 	//and increase the objects current frame 
		} else { 					//the current frame has reached its limit so hide the sprite
			eval(layerRef + '.' + this.starburstID +  styleRef + '.visibility = "hidden"');
		}	
	}

	/////////////////////////////////////////////////////////////////

	function processAnim() {
		for(x=0; x < NUM_OF_TRAIL_PARTS; x++)
			queue[x].animatestarburst();
	}

	function processMouse(e) {
		currentObj = shuffleQueue();
		if (isNS) {
			eval("document." + currentObj + ".left = e.pageX - 0 ;");
			eval("document." + currentObj + ".top = e.pageY + 5;");
		} else {
			eval("document.all." + currentObj + ".style.pixelLeft = event.clientX + document.body.scrollLeft - 0 ;");
			eval("document.all." + currentObj + ".style.pixelTop = event.clientY + document.body.scrollTop + 5;");
		}
	}

	function shuffleQueue() {
		lastItemPos = queue.length - 1;
		lastItem = queue[lastItemPos];
		for (i = lastItemPos; i>0; i--) 
			queue[i] = queue[i-1];
		queue[0] = lastItem;
		
		queue[0].currentFrame = 1;	//reset the objects frame number & make the sprite visible again
		eval(layerRef + '.' + queue[0].starburstID +  styleRef + '.visibility = "visible"');	
	
		return 	queue[0].starburstID;
	}

	function init() {
		for(x=0; x<NUM_OF_TRAIL_PARTS; x++) 	//fill array with trail objects
			queue[x] = new starburstObj(x+1) ;
	
		if (isNS) { document.captureEvents(Event.MOUSEMOVE); }
		document.onmousemove = processMouse;

		setInterval("processAnim();",25);
	}

	if (version > 3)
		window.onload = init;
	
	