Avatar billede darkhero Nybegynder
01. september 2001 - 11:36 Der er 2 kommentarer og
1 løsning

Preload, redirect!?!?!?

JEg har dette script til at preloade mine billeder, men jeg ville gerne have den til at redirecte når den var færdig! hvordan gør man det? jeg vil så sig at jeg er TOTAL NEWBIE til JS så jeg skal bruge en kode, ikke et råd!


**********
// PUT THE NAMES OF ALL YOUR IMAGES THAT NEED TO BE \"CACHED\" IN THE \"imagenames\" ARRAY.
// DONT FORGET THE COMMA BETWEEN EACH ENTRY, OR THE TICK MARKS AROUND EACH NAME.
// WHEN ALL THE IMAGES ARE DONE LOADING, THE \"imagesdone\" VARIABLE IS SET TO \"TRUE\"

var imagenames=new Array( \'1.gif\' , \'2.gif\' , \'3.gif\' , \'4.gif\' ,  \'5.gif\' , \'6.gif\');

var yposition=250;          //POSITION OF LOAD BAR FROM TOP OF WINDOW, IN PIXELS
var loadedcolor=\'gray\' ;    // PROGRESS BAR COLOR
var unloadedcolor=\'white\';  // BGCOLOR OF UNLOADED AREA
var barheight=15;          // HEIGHT OF PROGRESS BAR IN PIXELS (MIN 25)
var barwidth=350;          // WIDTH OF THE BAR IN PIXELS 
var bordercolor=\'black\';    // COLOR OF THE BORDER

//DO NOT EDIT BEYOND THIS POINT
var NS4 = (navigator.appName.indexOf(\"Netscape\")>=0 && parseFloat(navigator.appVersion) >= 4 && parseFloat(navigator.appVersion) < 5)? true : false;
var IE4 = (document.all)? true : false;
var NS6 = (parseFloat(navigator.appVersion) >= 5 && navigator.appName.indexOf(\"Netscape\")>=0 )? true: false;
var imagesdone=false;
var blocksize=barwidth/(imagenames.length);
barheight=Math.max(barheight,25);
var loaded=0, perouter, perdone, images=new Array();
var txt=(NS4)?\'<layer name=\"perouter\" bgcolor=\"\'+bordercolor+\'\" visibility=\"hide\">\' : \'<div id=\"perouter\" style=\"position:absolute; visibility:hidden; background-color:\'+bordercolor+\'\">\';
txt+=\'<table cellpadding=\"0\" cellspacing=\"1\" border=\"0\"><tr><td width=\"\'+barwidth+\'\" height=\"\'+barheight+\'\" valign=\"center\">\';
if(NS4)txt+=\'<ilayer width=\"100%\" height=\"100%\"><layer width=\"100%\" height=\"100%\" bgcolor=\"\'+unloadedcolor+\'\" top=\"0\" left=\"0\">\';
txt+=\'<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td valign=\"center\" width=\"\'+barwidth+\'\" height=\"\'+barheight+\'\" bgcolor=\"\'+unloadedcolor+\'\"><center><font color=\"\'+loadedcolor+\'\" size=\"1\" face=\"sans-serif\">Loading Images...</font></center></td></tr></table>\';
if(NS4) txt+=\'</layer>\';
txt+=(NS4)? \'<layer name=\"perdone\" width=\"100%\" height=\"\'+barheight+\'\" bgcolor=\"\'+loadedcolor+\'\" top=\"0\" left=\"0\">\' : \'<div id=\"perdone\" style=\"position:absolute; top:1px; left:1px; width:\'+barwidth+\'px; height:\'+barheight+\'px; background-color:\'+loadedcolor+\'; z-index:100\">\';
txt+=\'<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\"><tr><td valign=\"center\" width=\"\'+barwidth+\'\" height=\"\'+barheight+\'\" bgcolor=\"\'+loadedcolor+\'\"><center><font color=\"\'+unloadedcolor+\'\" size=\"1\" face=\"sans-serif\">Loading Images...</font></center></td></tr></table>\';
txt+=(NS4)? \'</layer></ilayer>\' : \'</div>\';
txt+=\'</td></tr></table>\';
txt+=(NS4)?\'</layer>\' : \'</div>\';
document.write(txt);
function loadimages(){
if(NS4){
perouter=document.perouter;
perdone=document.perouter.document.layers[0].document.perdone;
}
if(NS6){
perouter=document.getElementById(\'perouter\');
perdone=document.getElementById(\'perdone\');
}
if(IE4){
perouter=document.all.perouter;
perdone=document.all.perdone;
}
cliplayer(perdone,0,0,barheight,0);
window.onresize=setouterpos;
setouterpos();
for(n=0;n<imagenames.length;n++){
images[n]=new Image();
images[n].src=imagenames[n];
setTimeout(\'checkload(\'+n+\')\' ,n*100);
}}
function setouterpos(){
var ww=(IE4)? document.body.clientWidth : window.innerWidth;
var x=(ww-barwidth)/2;
if(NS4){
perouter.moveTo(x,yposition);
perouter.visibility=\"show\";
}
if(IE4||NS6){
perouter.style.left=x+\'px\';
perouter.style.top=yposition+\'px\';
perouter.style.visibility=\"visible\";
}}
function dispbars(){
loaded++;
cliplayer(perdone, 0, blocksize*loaded, barheight, 0);
if(loaded>=imagenames.length)setTimeout(\'hideperouter()\', 800);
}
function checkload(index){
(images[index].complete)? dispbars() : setTimeout(\'checkload(\'+index+\')\', 100);
}
function hideperouter(){
(NS4)? perouter.visibility=\"hide\" : perouter.style.visibility=\"hidden\";
imagesdone=true;
}
function cliplayer(layer, ct, cr, cb, cl){
if(NS4){
layer.clip.left=cl;
layer.clip.top=ct;
layer.clip.right=cr;
layer.clip.bottom=cb;
}
if(IE4||NS6)layer.style.clip=\'rect(\'+ct+\' \'+cr+\' \'+cb+\' \'+cl+\')\';
}
window.onload=loadimages;
Avatar billede Slettet bruger
01. september 2001 - 12:02 #1
Du skal bare indsætte det her lige før den sidste linje i scriptet:

if (imagesdone) {
location.href = \"den-nye-side.html\"
}

Og så skal du ændre \"den-nye-side.html\" til din rigtige side. Husk bare gåseøjnene!
Avatar billede darkhero Nybegynder
01. september 2001 - 13:15 #2
det virker ikke!
Avatar billede Slettet bruger
01. september 2001 - 17:24 #3
Så indsæt det her under den linje, hvor der står imagesdone=true; :

location.href = \"den-nye-side.html\"

Nu virker det! (jeg har testet det!)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester