Avatar billede elskermad.dk Nybegynder
31. maj 2004 - 17:05 Der er 9 kommentarer og
1 løsning

tilfældig toplogo

hej eksperter!

jeg har forsøgt mig at lave en tilfældig toplogo-script men den virker ikke helt :(

koden indtil nu:

        function topimage() {
            var image = new Array(
            'default.gif',
            'mig.gif'
            );
           
            var x = image[parseInt(Math.random() * image.length)]-1;
           
            document.getElementById('top').style.image = x;
        }
        function doit() {
            topimage()
        }

doit() bliver loadet ved onLoad


top-diven ser således ud: <div id='top'></div>

og stylen til den:

#top {
    position:            absolute;
    width:                725px;
    height:                137px;
    left:                51px;
    top:                10px;
    background-repeat:     no-repeat;   
    z-index:            10
}

hvordan får jeg den til at virke?
Avatar billede skovenborg Nybegynder
31. maj 2004 - 17:11 #1
der er jo ikke nogen css-property der hedder image - du tænker nok mere på background-image, så skriv:
document.getElementById('top').style.backgroundImage = x;

x skal nok også laves om til:
  var x = image[parseInt(Math.random() * image.length)-1];
Avatar billede skovenborg Nybegynder
31. maj 2004 - 17:12 #2
eller måske:
var x = image[Math.floor(Math.random()*image.length)];
men det giver måske samme resultat.
Avatar billede skovenborg Nybegynder
31. maj 2004 - 17:13 #3
...en anden god ide er også at definere et baggrundsbillede lige meget hvad - altså i CSS'en. På den måde kan du forsikre dig om at folk uden javascript eller manglende understøttelse på fx getElementById stadig vil se mindst et logo.
Avatar billede elskermad.dk Nybegynder
31. maj 2004 - 17:22 #4
den siger fejl i denne linie: document.getElementById('top').style.backgroundImage = x;

har sat et baggrundsbillede ind i css så den altid er der og ændret til backgroundImage istedet for image, og ændret til din "var x..."
Avatar billede elskermad.dk Nybegynder
31. maj 2004 - 17:25 #5
den finder godt nok en tilfældig image, men det er lige som style.backgroundImage ikke er rigtigt!
Avatar billede elskermad.dk Nybegynder
31. maj 2004 - 17:27 #6
tjek lige kildekoden inden du kigger på det jeg har skrevet for sider og roder med det samtidig så kan være den er blevet ændret inden du læser dette
Avatar billede elskermad.dk Nybegynder
31. maj 2004 - 17:30 #7
ehmn nu vælger den ikke en igen :(
Avatar billede elskermad.dk Nybegynder
31. maj 2004 - 17:35 #8
sådan nu fik jeg rodet så meget det virker :D læg et svar
Avatar billede skovenborg Nybegynder
31. maj 2004 - 17:35 #9
ja, der er lige en lille fejl - først og fremmest skal du (spørg mig ikke hvorfor) skrive background-image nede i selve dit div-element:
<div id='top' style="background-image:url(billede.png);"></div>

herefter skal du i dit script skrive:
var x = image[parseInt(Math.random() * image.length)];
document.getElementById('top').style.backgroundImage = "url("+x+")";

det burde gør det
Avatar billede skovenborg Nybegynder
31. maj 2004 - 17:36 #10
åhh, virker det nu - jamen så værsgo' da :-)
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