Startbild

JavaScript

0 svar · 293 visningar · startad av Biasse

Medlem sedan aug. 2003480 inlägg
Trådstart#1

Jag har ett bildspel på en sida och undrar om man kan bestämma vilken bild som visas först när man startar eller om det bara går att få det slumpvis?

function fisherYates ( myArray ) {
  var i = myArray.length;
  if ( i == 0 ) return false;
  while ( --i ) {
     var j = Math.floor( Math.random() * ( i + 1 ) );
     var tempi = myArray[i];
     var tempj = myArray[j];
     myArray[i] = tempj;
     myArray[j] = tempi;
   }
}

window.addEventListener?window.addEventListener('load',so_init,false):window.attachEvent('onload',so_init);

var d=document, imgs = new Array(

"bilder/aaastart.jpg",
"bilder/cias_cad58.jpg",
"bilder/czarnecki_firebird69.jpg",
"bilder/dahlberg_cadillac.jpg",
"bilder/erlandson_cadillac.jpg",
"bilder/inges_charger.jpg",
"bilder/janne_malibu.jpg",
"bilder/jimmy_impala.jpg",
"bilder/Kellberg_camaro_1.jpg",
"bilder/kina_dodge59_2.jpg",
"bilder/kjelle_cad58.jpg",
"bilder/kjelle_ford2.jpg",
"bilder/lenas_lemans.jpg",
"bilder/likbil1.jpg",
"bilder/lindberg_gto.jpg",
"bilder/lindberg_olds.jpg",
"bilder/ACCS.jpg",
"bilder/lovin_ford66.jpg",
"bilder/luvan_roadrunner.jpg",
"bilder/ostman_cadillac59.jpg",
"bilder/p_gustafson_camaro.jpg",
"bilder/peter_skyline.jpg",
"bilder/raimo_bonne_2.jpg",
"bilder/Rauno_Buick_1.jpg",
"bilder/slotte_firebird.jpg",
"bilder/stefan_pontiac55.jpg",
"bilder/swaerd_cadillac.jpg",
"bilder/wallin_dart.jpg",
"bilder/wallstrom_chrysler.jpg",
"bilder/viklund_crownvictoria56.jpg",
"bilder/wikstrom_dodge59.jpg"

), zInterval = null, current=0, pause=false;

function newImage(src)
{
	var img = d.createElement('img');
	img.src = src;
	return img;
}

function so_init()
{
	if(!d.getElementById || !d.createElement)return;

	css = d.createElement('link');
	css.setAttribute('href','slideshow2.css');
	css.setAttribute('rel','stylesheet');
	css.setAttribute('type','text/css');
	d.getElementsByTagName('head')[0].appendChild(css);

	fisherYates(imgs);
	imgs[0] = document.getElementById('rotator').appendChild(newImage(imgs[0]));
	imgs[0].style.display = 'block';
	imgs[0].xOpacity = .99;

	setTimeout(so_xfade,3000);
}

function so_xfade()
{
	if (imgs[current+1] && typeof(imgs[current+1]) != typeof({})){
		imgs[current+1] = document.getElementById('rotator').appendChild(newImage(imgs[current+1]));
		imgs[current+1].xOpacity = 0;
	}

	cOpacity = imgs[current].xOpacity;
	nIndex = imgs[current+1]?current+1:0;
	nOpacity = imgs[nIndex].xOpacity;

	cOpacity-=.05;
	nOpacity+=.05;

	imgs[nIndex].style.display = 'block';
	imgs[current].xOpacity = cOpacity;
	imgs[nIndex].xOpacity = nOpacity;

	setOpacity(imgs[current]);
	setOpacity(imgs[nIndex]);

	if(cOpacity<=0)
	{
		imgs[current].style.display = 'none';
		current = nIndex;
		setTimeout(so_xfade,3000);
	}
	else
	{
		setTimeout(so_xfade,50);
	}

	function setOpacity(obj)
	{
		if(obj.xOpacity>.99)
		{
			obj.xOpacity = .99;
			return;
		}

		obj.style.opacity = obj.xOpacity;
		obj.style.MozOpacity = obj.xOpacity;
		obj.style.filter = 'alpha(opacity=' + (obj.xOpacity*100) + ')';
	}
}
266 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)