Avatar billede hkb-x Nybegynder
16. november 2005 - 10:11 Der er 37 kommentarer og
1 løsning

vis kun billede hvis

jeg har et billede (test.img) der kun skal loades hvis et eller andet kriterium et opfyldt .... hvordan gør jeg det?
Avatar billede johan.o Nybegynder
16. november 2005 - 10:21 #1
<img id="oPic" src="">

if(..noget..) {
document.getElementById("oPic").src="..dit billede.."; }

Der er sikkert problemer med src="" men med den mængde information du stiller til rådighed er det mit bedste forslag :)

Mvh. Johan
Avatar billede softspot Forsker
16. november 2005 - 10:22 #2
Hvilket kriterium er der tale om?

Er det noget som ændrer sig på klienten eller kan du tage beslutningen allerede på serveren?
Avatar billede hkb-x Nybegynder
16. november 2005 - 10:29 #3
sorø... havde lidt travlt...

det drejer sig om en bannerreklame der skal vises i siden af billedet... men den må ikke gøre siden højere så derfor skal den kun vises hvis den ikke er højere end siden...

lidt sort... men det jeg spørger om er ikke kriteriet men om man kan undgå at brugeren skal loade billedet...
Avatar billede hkb-x Nybegynder
16. november 2005 - 10:31 #4
skal if(..noget..) {
document.getElementById("oPic").src="..dit billede.."; } indsættes i højden...
Avatar billede hkb-x Nybegynder
16. november 2005 - 10:31 #5
sorø ikke højden men <head>
Avatar billede hkb-x Nybegynder
16. november 2005 - 10:35 #6
hmm... den loader ikke...
Avatar billede softspot Forsker
16. november 2005 - 10:39 #7
Du har indsat koden i et script-tag og i en funktion, som bliver kaldt på load-tidspunktet, ikk'?
Avatar billede softspot Forsker
16. november 2005 - 10:39 #8
<script type="text/javascript">
window.onload = function() {
  if(..noget..) {
    document.getElementById("oPic").src="..dit billede..";
  }
}
</script>
Avatar billede hkb-x Nybegynder
16. november 2005 - 10:48 #9
øhh... ups... (pinligt)

nu virker der... tak... ;)
Avatar billede softspot Forsker
16. november 2005 - 10:51 #10
velbekomme :)
Avatar billede hkb-x Nybegynder
16. november 2005 - 10:52 #11
kan jeg bruge denne if(window.innerHeight > 1000) ??
Avatar billede softspot Forsker
16. november 2005 - 10:54 #12
Ja, hvis du kun vil have at det fungerer i netscape-kloner af browsere...
Avatar billede hkb-x Nybegynder
16. november 2005 - 10:55 #13
haha... vil helst have det til at fungerer i alle?
Avatar billede softspot Forsker
16. november 2005 - 11:05 #14
Jeg er faktisk ikke helt klar over om det er det samme de måler, men på IE er der noget som hedder clientHeight på style-objektet. Hvis nu det er det samme, så kan du måske checke således:

if(window.innerHeight && window.innerHeight > 1000) {
  document.getElementById("oPic").src="..dit billede..";
}
else if(document.style.clientHeight && document.style.clientHeight > 1000) {
  document.getElementById("oPic").src="..dit billede..";
}
Avatar billede hkb-x Nybegynder
16. november 2005 - 11:10 #15
har fundet løsning... men den giver problemer med noget andet JS jeg har på siden hvis funktionen hedder function() ... men hvis jeg omdøber den så virker scriptet ikke... :s
Avatar billede softspot Forsker
16. november 2005 - 11:15 #16
Hvad er det for noget kode den er i konflikt med?

Du kan ikke ændre på at det hedder function() - det er en af metoderne til at definere anonyme funktioner på et element. Det svarer til at man laver dette

<body onload="if(..noget..) { document.getElementById("oPic").src="..dit billede.."; }">
Avatar billede hkb-x Nybegynder
16. november 2005 - 11:22 #17
hmm.... kan dette lade sig gøre...

<img id="oPic" src="" onload="if(document.body.clientHeight > 1000) { document.getElementById("oPic").src="..dit billede.."; }">
Avatar billede softspot Forsker
16. november 2005 - 12:05 #18
Ud over at der er nogle syntaksfejl i dit tag (du kan ikke bruge " inde i en element-attribut der er afgrænset af ", der skal du bruge \" eller ' i stedet), så er jeg ikke sikker på om man kan bruge onload på et billede.
Avatar billede softspot Forsker
16. november 2005 - 12:05 #19
Men igen - Hvad er det for noget kode den er i konflikt med?
Avatar billede johan.o Nybegynder
16. november 2005 - 12:28 #20
Hm, det kunne være rart at høre præcis hvorfor banneret ikke må vises altid. Er det fordi du ikke vil have scroll bars ? eller flytter banneret noget andet indhold du ikke vil have flyttet ? eller noget helt tredie ?

Mvh. Johan
Avatar billede hkb-x Nybegynder
16. november 2005 - 12:45 #21
jeg vil bare ikke have siden længere end indholdet... banneret er 200x600px og hvis der kun er et tomrum på 100px syntes jeg det er spild at have 500px extra til bunden bare for at have en reklame...
Avatar billede roenving Novice
16. november 2005 - 12:51 #22
-- man kan sagtens bruge onload på et billede, men den relaterer sig selvfølgelig til billedets load, så i den sammenhæng giver det ikke mening ...

-- hvis du i forvejen har noget script, der bruger onload skal du selvfølgelig sørge for at begge dele bliver kørt ved _eet_ kald !-)
Avatar billede softspot Forsker
16. november 2005 - 13:08 #23
Det var netop det jeg gerne have hkb-x til at vise, så vi kunne få det smeltet sammen... men det går lidt træg med at få informationen ud af hkb-x :)
Avatar billede hkb-x Nybegynder
16. november 2005 - 13:11 #24
sorø... ;)

jeg bruger ikke andre onload's...
Avatar billede roenving Novice
16. november 2005 - 13:12 #25
-- har du heller ikke menuscripts eller lignende ?-)
Avatar billede hkb-x Nybegynder
16. november 2005 - 13:16 #26
joh... men de bruger ikke onload...
Avatar billede roenving Novice
16. november 2005 - 13:17 #27
Hvis det er javascript-baseret kode, der udformer menuerne bruger de næsten helt sikkert onload, prøv at kigge i kildefilerne !-)
Avatar billede hkb-x Nybegynder
16. november 2005 - 13:19 #28
der er ikke noget der bliver udfoldet... men de bruger function() (det er derfor jeg vil bruge onload)...
Avatar billede roenving Novice
16. november 2005 - 13:20 #29
Prøv at vise din side (link !-)
Avatar billede hkb-x Nybegynder
16. november 2005 - 13:25 #30
Avatar billede hkb-x Nybegynder
16. november 2005 - 13:25 #31
forside... intet banner....
nye produkter... et styks banner
Avatar billede roenving Novice
16. november 2005 - 13:31 #32
Du bruger jo netop også to gange onload ...

<script type="text/javascript">
window.onload=function(){
  if(document.body.clientHeight > 1000)
    document.getElementById("oPic").src="b.gif";
  if(Tjek())
    Rounded("div#menu","#FFFFFF","#E3EDF5");
}
</script>
Avatar billede hkb-x Nybegynder
16. november 2005 - 13:42 #33
DOH!... tumpe mig,... sorø... min fejl....

johan.o
skriv svar for point...

roenving & softspot

jeg opretter også points til jer....

tak for hjælpen... ;)
Avatar billede roenving Novice
16. november 2005 - 13:44 #34
-- hvis du vil give flere point i et åbent spørgsmål, kan du oppe til venstre under funktioner finde punktet 'Afsæt flere point' !-)
Avatar billede softspot Forsker
16. november 2005 - 13:44 #35
Ikke nødvendig med ekstra spm med point for mit vedkommende, ellers tak :)
Avatar billede hkb-x Nybegynder
16. november 2005 - 13:50 #36
men du ku jo også få dine points her... ;)

http://www.eksperten.dk/spm/664982
Avatar billede johan.o Nybegynder
16. november 2005 - 15:01 #37
Hold da op, der var ellers kommet et par indlæg mens jeg kørte hjem fra arbejde.:)

Men jeg lægger da gerne et svar :)

Mvh. Johan
Avatar billede hkb-x Nybegynder
17. november 2005 - 10:45 #38
joh... men det er kommet ud fra din grundide.. ;)... tak...
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