01. juli 2005 - 21:22Der er
6 kommentarer og 1 løsning
Slideover effect med tilhørende hyperlink
Jeg har et javascript som automatisk fader mellem en liste af billeder... det jeg så gerne vil nu, er at jeg vil have hvert enkelt billede, til at repræsentere et hyperlink :) HVORDAN?! :D
Koden ser ud som følger:
<html> <head> <SCRIPT LANGUAGE="JavaScript"> <!-- <!-- Begin // Indstil hastigheden (millisekunder) var slideShowSpeed = 7000; // Lad følgende linie forblive som den er var crossFadeDuration = 2; // Billede-filerne var Pic = new Array(); // For at tilføje flere, fortsæt da bare på samme måde Pic[0] = 'pic_1.jpg' Pic[1] = 'pic_2.jpg' Pic[2] = 'pic_3.jpg' Pic[3] = 'pic_4.jpg' Pic[4] = 'pic_5.jpg' Pic[5] = 'pic_6.jpg'
// Lad være med at ændre noget under denne linie var t; var j = 0; var p = Pic.length; var preLoad = new Array(); for (i = 0; i < p; i++) { preLoad[i] = new Image(); preLoad[i].src = Pic[i]; } function runSlideShow() { if (document.all) { document.images.SlideShow.style.filter="blendTrans(duration=2)"; document.images.SlideShow.style.filter="blendTrans(duration=crossFadeDuration)"; document.images.SlideShow.filters.blendTrans.Apply(); } document.images.SlideShow.src = preLoad[j].src; if (document.all) { document.images.SlideShow.filters.blendTrans.Play(); } j = j + 1; if (j > (p - 1)) j = 0; t = setTimeout('runSlideShow()', slideShowSpeed); } // Her kan du begynde at ændre igen --> </script> </head> <body onLoad="runSlideShow()"> <img src="pic_1.JPG" name="SlideShow"> </body> </html>
Støv, fibre og metalliske partikler kan påvirke både uptime, levetid og driftssikkerhed. Derfor arbejder flere datacentre systematisk med contamination control.
Du kunne så lægge links i et tilsvarende array som du slog op i på samme måde som for billedenavnene. Alternativt lave et 2-dimensionelt array hvor billedenavn og link ligger sammen...
Ehm, må indrømme jeg er lost her :D jeg gør mig mest inden for grafik, og er ikke god til at programmere, så det er lidt tåget for mig det der :D Det skal siges at scriptet ikke er lavet af mig selv :P
<html> <head> <SCRIPT LANGUAGE="JavaScript"> <!-- <!-- Begin // Indstil hastigheden (millisekunder) var slideShowSpeed = 7000; // Lad følgende linie forblive som den er var crossFadeDuration = 2; // Billede-filerne var Pic = new Array(); // For at tilføje flere, fortsæt da bare på samme måde Pic[0] = 'pic_1.jpg' Pic[1] = 'pic_2.jpg' Pic[2] = 'pic_3.jpg' Pic[3] = 'pic_4.jpg' Pic[4] = 'pic_5.jpg' Pic[5] = 'pic_6.jpg'
// Lad være med at ændre noget under denne linie var t; var j = 0; var p = Pic.length; var preLoad = new Array(); for (i = 0; i < p; i++) { preLoad[i] = new Image(); preLoad[i].src = Pic[i]; } function runSlideShow() { if (document.all) { document.images.SlideShow.style.filter="blendTrans(duration=2)"; document.images.SlideShow.style.filter="blendTrans(duration=crossFadeDuration)"; document.images.SlideShow.filters.blendTrans.Apply(); } document.images.SlideShow.src = preLoad[j].src; document.getElementById("slideLink").href = Links[j]; if (document.all) { document.images.SlideShow.filters.blendTrans.Play(); } j = j + 1; if (j > (p - 1)) j = 0; t = setTimeout('runSlideShow()', slideShowSpeed); } // Her kan du begynde at ændre igen --> </script> </head> <body onLoad="runSlideShow()"> <a href="link1.htm" id="slideLink"><img src="pic_1.JPG" name="SlideShow" border="0"></a> </body> </html>
Det er da spøjst. Så prøv lige dette kode i stedet:
<html> <head> <SCRIPT LANGUAGE="JavaScript"> <!-- <!-- Begin // Indstil hastigheden (millisekunder) var slideShowSpeed = 7000; // Lad følgende linie forblive som den er var crossFadeDuration = 2; // Billede-filerne var Pic = new Array(); // For at tilføje flere, fortsæt da bare på samme måde Pic[0] = 'pic_1.jpg' Pic[1] = 'pic_2.jpg' Pic[2] = 'pic_3.jpg' Pic[3] = 'pic_4.jpg' Pic[4] = 'pic_5.jpg' Pic[5] = 'pic_6.jpg'
// Lad være med at ændre noget under denne linie var t; var j = 0; var p = Pic.length; var preLoad = new Array(); for (i = 0; i < p; i++) { preLoad[i] = new Image(); preLoad[i].src = Pic[i]; preLoad[i].lnk = Lnks[i]; } function runSlideShow() { if (document.all) { document.images.SlideShow.style.filter="blendTrans(duration=2)"; document.images.SlideShow.style.filter="blendTrans(duration=crossFadeDuration)"; document.images.SlideShow.filters.blendTrans.Apply(); } document.images.SlideShow.src = preLoad[j].src; document.getElementById("slideLink").href = preLoad[j].lnk; if (document.all) { document.images.SlideShow.filters.blendTrans.Play(); } j = j + 1; if (j > (p - 1)) j = 0; t = setTimeout('runSlideShow()', slideShowSpeed); } // Her kan du begynde at ændre igen --> </script> </head> <body onLoad="runSlideShow()"> <a href="link1.htm" id="slideLink"> <img src="pic_1.JPG" name="SlideShow" border="0"></a> </body> </html>
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.