Avatar billede cool_casper Nybegynder
15. september 2005 - 01:39 Der er 10 kommentarer og
2 løsninger

Onmouseover baggrund er langsom i IE

Hejsa,

http://www.thirdlevel.dk har jeg en menu kørende hvor jeg skifter baggrund på en celle ved mouseover. Men i Internet Explorer (IE) er den lidt langsom. Den er ret lang tid om at hente baggrunden til trods for at jeg preloader den når siden hentes. I andre browsere opstår problemet ikke.
Versionen på den IE jeg tester med er 6.0.2.

Er det kun mig der har fejlen og i modsat fald hvordan kan jeg gøre mit baggrundsskifte hurtigere?

Den funktion jeg bruger ved mouseover er her:
function change_bg(id,url)
{
    document.getElementById(id).style.backgroundImage = 'url('+url+')';
    document.getElementById(id).style.cursor='pointer';
    document.getElementById(id).style.cursor='hand';
}

Og den kaldes f.eks. sådan her:
onMouseOver="change_bg('menu1','images/menu_bg_on.gif');"

Venlig Hilsen
Casper
Avatar billede softspot Forsker
15. september 2005 - 01:46 #1
Tools > Internet Options > General-fanen > Settings: vælg automatisk valg af opdatering...

Jeg er klar over at du ikke er interesseret i at skulle ændre alle brugeres browser-opsætninger, men så skal du sætte nogle caching-headers på serveren, eller sætte expirery på IIS for den mappe hvor dine billeder ligger.
Avatar billede cool_casper Nybegynder
15. september 2005 - 01:51 #2
Hmm.. Det ordnede godt nok problemet, men som du siger er det svært for mig at ændre brugerenes instillinger.. :)
Jeg er ikke interesseret i at folk ikke kan cache hele siden. Der skulle vel ikke være en metode som kun virker for specifikke billeder? Så jeg kan fortælle den at lige præcis det billede ikke skal caches..
Avatar billede cool_casper Nybegynder
15. september 2005 - 01:55 #3
Ved du hvad IE's standard-instilling er på det punkt? Det kan være jeg kan se mig nødsaget til at overse problemet..
Avatar billede softspot Forsker
15. september 2005 - 01:57 #4
Jo, på webserverens IIS-opsætning, kan du finde den folder hvor dine billeder ligger og så sætte Content Expiration til f.eks. 7 dage eller noget i den stil.

Dette gøres ved at højreklikke på den folder eller fil du vil have cahcet på klienten og vælge properties. I dialogen vælges fanen HTTP Headers, hvorefter du tilvælger "Enable Content Expiration" og specificerer hvorlang tid data skal caches.
Avatar billede cool_casper Nybegynder
15. september 2005 - 02:02 #5
Hmm.. hvad så hvis jeg ikke kører IIS?
Avatar billede softspot Forsker
15. september 2005 - 02:05 #6
Så virker det trick i hvert tilfælde ikke :D

Så kan jeg desværre ikke hjælpe dig videre...
Avatar billede cool_casper Nybegynder
15. september 2005 - 02:10 #7
Det gør ikke spor.. Jeg tror bare jeg lader det være som det er og så håber på folk har den rigtige indstilling i browseren hvis de kører IE.
Tak for hjælpen. Hvis du vil have en slat point for hjælpen så smid et svar.. !)
Avatar billede softspot Forsker
15. september 2005 - 02:12 #8
Hvis du synes det var det værd :)
Avatar billede cool_casper Nybegynder
15. september 2005 - 02:15 #9
Det var det skam.. Hav en forsat god nat !)
Avatar billede softspot Forsker
15. september 2005 - 02:16 #10
Tak i lige måde og tak for point :)
Avatar billede roenving Novice
15. september 2005 - 12:07 #11
-- og det skal da tilføjes, at cursor ikke hører til på en mouseover, da den i forvejen kun er gældende, når musen er over ...

Desuden overskriver du vel den ene property med den anden, men du kan bare:

... style="cursor:hand;cursor:pointer;" ...

-- hvis du vil understøtte gamle versioner af IE !-)

-- og hvis der går lang tid med at vise billedet, selvom det er preloadet, skal du måske kigge efter em hurtigere forbindelse, enten hos dig selv eller hos din udbyder, men du kan ikke undgå, at brugere med indstillingen 'Hent ny udgave hver gang', ser et blink, når IE lige spørger serveren om der er kommet en ny udgave !o]
Avatar billede cool_casper Nybegynder
15. september 2005 - 12:11 #12
Okay, tak for 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