Avatar billede Rasmusjc Juniormester
11. august 2004 - 16:31 Der er 1 løsning

Rotation af Banner med link

Hej Eksperter.

Har med Roenving's hjælp nået frem til denne form for en rotationsbanner hvor det er muligt at klikke og så komme videre til sponsorens hjemmeside, hvis denne har en.

Den virker dog ikke optimalt da linksene ikke altid popper op i en ny side og det ikke altid er den rigtige som passer til billedet.

Nogen der kan se problemet?

mvh. Rasmus Christensen

<head>
<title>Fade slideshow</title>

<meta name="Generator" content="Stone's WebWriter 4">
<meta name="keywords" content="roenving,http://www.eksperten.dk/spm/478961">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<script type="text/javascript" language="JavaScript1.2">
var slideshow_width='210px'; //SET IMAGE WIDTH
var slideshow_height='60px'; //SET IMAGE HEIGHT
var pause=3000; //SET PAUSE BETWEEN SLIDE (3000=3 seconds)
var imagepath = "http://www.faarvangfodbold.dk/images/sponsor1/";
var linkspath = "";

var fimages = new Array();
var imlinks = new Array();

fimages[fimages.length] = "bg.jpg,1";// <- 1-tallet bruges som antal visninger på en runde ->
imlinks[imlinks.length] = "http://www.bgbank.dk/"
fimages[fimages.length] = "byggekram.jpg,1";// <- dette billede vises 3 gange på en runde ->
imlinks[imlinks.length] = "http://www.dendek-gjern.dk/"
fimages[fimages.length] = "gangsoe.jpg,1";// <- dette billede vises 3 gange på en runde ->
imlinks[imlinks.length] = "http://www.gangso.dk/"
fimages[fimages.length] = "henriksen.jpg,1";// <- dette billede vises 3 gange på en runde ->
imlinks[imlinks.length] = "http://www.fuck"
fimages[fimages.length] = "dagli.jpg,1";// <- dette billede vises 3 gange på en runde ->
imlinks[imlinks.length] = "http://www.fuck"


var preloadedimages=new Array();
  for (p=0;fimages.length>p;p++){
    preloadedimages[p] = new Image();
    preloadedimages[p].src = imagepath + fimages[p].substring(0,fimages[p].indexOf(","));
  }

var fadeimages = new Array();
var imagelinks = new Array();
for(i=0;fimages.length>i;i++){
  num = fimages[i].replace(/.*\,(\d+)$/,"$1");
  for(j=0;num>j;j++){
    fadeimages[fadeimages.length] = imagepath + fimages[i].substring(0,fimages[i].indexOf(","));
    imagelinks[imagelinks.length] = linkspath + imlinks[i];
  }
}

var slidelength = fadeimages.length,curcanvas,curimageindex,actZ=100;
function shuffleArray(a) {
var t=s=0;
  for(var i=0;a.length>i;i++){
  t = Math.floor(Math.random()*a.length);
  s = a[i];
  a[i] = a[t] ;
  a[t] = s;
  }
return a;
}
var ix = new Array();
for(i=0;slidelength>i;i++)ix[i]=i;
ix = shuffleArray(ix);

var OpC = new Array();
var ie = (document.all)?true:false;
var moz = (navigator.userAgent.indexOf("Gecko")>-1)
function startOpChange(elm,end,tim){
  if(!ie&&!moz)return;
  var idx = OpC.length;
    for(var i=0;idx>i;i++){
        if(OpC[i][0]==elm){
          clearInterval(OpC[i][4]);
            idx = i;
            break;
        }
        OpC[idx] = new Array();
    }
  if(idx==0)OpC[idx] = new Array();
   
    if(ie)actOp=elm.filters.alpha.opacity;
    else actOp=Math.round((elm.style.MozOpacity*100));
  if (actOp!=end){
    OpC[idx][0]=elm;
    OpC[idx][1]=actOp;
    OpC[idx][2]=end;
    OpC[idx][3]=(end>actOp)?1:-1;
    var delayTime = Math.floor((tim*1000)/Math.abs((actOp-end)));
    OpC[idx][4]=setInterval("opChange("+idx+")",delayTime);
  }
}
function opChange(idx){
  OpC[idx][1]+=OpC[idx][3];
  if (ie)OpC[idx][0].filters.alpha.opacity=OpC[idx][1];
  else OpC[idx][0].style.MozOpacity=Math.min(0.9999,OpC[idx][1]/100);
  if (OpC[idx][1]==OpC[idx][2]){
    clearInterval(OpC[idx][4]);
    return;
  }
}

function initSlide(){
  var c = document.getElementById('slidecontainer');
  with(c.style){
    position='relative';
    overflow='hidden';
    width=slideshow_width;
    height=slideshow_height;
  }
  if (ie||moz){
    for(i=0;2>i;i++){
      var im = document.createElement('IMG');
      c.appendChild(im);
      with(im.style){
        position='absolute';
        top=left='0px';
        width=slideshow_width;
        height=slideshow_height;
        filter='alpha(opacity=5)';
        MozOpacity='0.05';
        zIndex = ++actZ;      }
      im.id = 'canvas'+i;
      im.src = imagepath + fimages[i].substring(0,fimages[i].indexOf(","));
      im.alt = imagelinks[i];
      if(imagelinks[i]=="")
      im.onclick = function(){return false;};
      else
      im.onclick = function(){window.open(imagelinks[i],''+i);};
    }
    startOpChange(im,100,pause/10000);
    setInterval('nextSlide()',pause);
  }else{
    var im = document.createElement('IMG');
    c.appendChild(im);
    with(im.style){
      position='absolute';
      top=left='0px';
      width=slideshow_width;
      height=slideshow_height;
    }
    im.id = "canvas"
    im.src = fadeimages[0];
    im.style.zIndex = 0;
  }
  curcanvas="canvas1";
  curimageindex=0;
}

function nextSlide(){
  startOpChange(document.getElementById(curcanvas),5,pause/10000);
  curcanvas = 'canvas' + ((curcanvas=='canvas0')?1:0);
  var im = document.getElementById(curcanvas);
  if(curimageindex+1==slidelength)ix = shuffleArray(ix);
  curimageindex = ++curimageindex%slidelength;
  im.src = fadeimages[ix[curimageindex]];
  im.alt = imagelinks[ix[curimageindex]];
  if(imagelinks[ix[curimageindex]]="")
    im.onclick = function(){return false;};
  else
    im.onclick = function(){window.open(imagelinks[ix[curimageindex]],''+ix[curimageindex]);};
  im.onclick = function(){location.href = imagelinks[ix[curimageindex]]};
  im.style.zIndex += 1;
  startOpChange(im,100,pause/10000); 
}

function rotateimage(){
  var im = document.getElementById('canvas');
  if(curimageindex+1==slidelength)ix = shuffleArray(ix);
  curimageindex = ++curimageindex%slidelength;
  im.src = fadeimages[ix[curimageindex]];
}

    if (ie||moz)
        window.onload=initSlide;
    else
        setInterval("rotateimage()",pause);

</script>
</head>
Avatar billede Rasmusjc Juniormester
17. august 2004 - 15:28 #1
Lukker spørgsmålet. Finder på noget andet.
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