Avatar billede mtrolle Nybegynder
28. oktober 2003 - 20:48 Der er 29 kommentarer og
1 løsning

skift indhold

Hej!

Jeg har et perfekt spørgsmål til jer!
Jeg har en side, hvor jeg har en box med nogle programmer. Jeg vil nu gerne have, at man skal kunne klikke på et link, hvorefter indholdet i denne bokse ændres.
Boksen indeholder både billeder og tekst.
Det skal virke i alle browsere. Jeg har prøvet med at have to bokse, hvor den ene i style havde display:none og den anden havde display:block.
Det virker ikke ;) Eller jeg kan i alt fald ikke få det til at virke!

Hjælp!

//mtrolle
Avatar billede roenving Novice
28. oktober 2003 - 21:02 #1
Hvad gik galt med dine skiftende bokse ?-)
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 21:05 #2
jeg kan bare ikke finde ud af det ;)
Jeg vil gerne have, at den ene gemmes og den anden vises, skiftevis!
Kode:
        <p class="indhold" style="height:50px; overflow:hidden; background-image:url('imgs/dk4_big_background.gif'); background-repeat:no-repeat; background-position:right center; display:block;" id="now1"><? ontv_now(15); ?><a href="#" onclick="next1.style.display=\'none\' ? \'block\' : \'none\';">Next shown</a></p>
        <p class="indhold" style="height:50px; overflow:hidden; background-image:url('imgs/dk4_big_background.gif'); background-repeat:no-repeat; background-position:right center; display:none;" id="next1"><? ontv_now(15,'next'); ?></p>
Avatar billede roenving Novice
28. oktober 2003 - 21:10 #3
<div class="indhold" style="height:50px; overflow:hidden; background:url('imgs/dk4_big_background.gif') no-repeat right center; display:block;" id="now1"><?php ontv_now(15); ?><a href="#" onclick="document.getElementById('next1').style.display=(document.getElementById('next1').style.display=='none')?'block':'none';">Next shown</a></p>
        <p class="indhold" style="height:50px; overflow:hidden; background:url('imgs/dk4_big_background.gif') no-repeat right center; display:none;" id="next1"><?php ontv_now(15,'next'); ?></p>
Avatar billede roenving Novice
28. oktober 2003 - 21:11 #4
Uff ...

<div class="indhold" style="height:50px; overflow:hidden; background:url('imgs/dk4_big_background.gif') no-repeat right center; display:block;" id="now1"><?php ontv_now(15); ?><a href="#" onclick="document.getElementById('next1').style.display=(document.getElementById('next1').style.display=='none')?'block':'none';">Next shown</a></div>
        <div class="indhold" style="height:50px; overflow:hidden; background:url('imgs/dk4_big_background.gif') no-repeat right center; display:none;" id="next1"><?php ontv_now(15,'next'); ?></div>
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 21:13 #5
Øh - hvorfor div?
Avatar billede roenving Novice
28. oktober 2003 - 21:20 #6
Fordi div er den naturlige container i html over 2 ...

-- og skiftevis, så:

<script type="text/javascript">
function toggleDivs(fld,next){
  if(fld.style.display=="none"){
    fld.style.display='block';
    next.style.display='none';
  }else{
    fld.style.display='none';
    next.style.display='block';
  }
}
</script>

<div class="indhold" style="height:50px; overflow:hidden; background:url('imgs/dk4_big_background.gif') no-repeat right center; display:block; cursor:pointer;" id="now1" onclick="toggleDivs(this,document.getElementById('next1'));"><?php ontv_now(15); ?>&nbsp;Next shown</div>
<div class="indhold" style="height:50px; overflow:hidden; background:url('imgs/dk4_big_background.gif') no-repeat right center; display:none; cursor:pointer;" id="next1" onclick="toggleDivs(this,document.getElementById('now1'));"><?php ontv_now(15,'next'); ?>&nbsp;Previous shown</div>
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 21:29 #7
>Fordi div er den naturlige container i html over 2 ...
Jeg blev ikke meget klogere ;)
Og ang. dit script, det virker altså ikke!
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 21:29 #8
og jeg har rettet din , fejl i this.document.blablabla begge steder
Avatar billede roenving Novice
28. oktober 2003 - 21:35 #9
Det var præcis ikke en fejl, for det fungerer med kommaet !-)
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 21:40 #10
Okay - det virker altså ikke i min browser Safari, hvilket en stor del af Mac-brugerne bruger og jeg vil gerne have alle har glæde af mine sider!
Avatar billede myplacedk Nybegynder
28. oktober 2003 - 21:47 #11
"jeg vil gerne have alle har glæde af mine sider!"
Godt nok ikke et svar på dit spørgsmål, men det udsagn hænger ikke sammen med, at du laver noget, som kræver javascript. Bla. fordi mange slår det fra.
Personligt ser jeg langt flere der har slået javascript fra, end jeg ser mac-brugere, uanset hvilken browser de bruger. :)
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 21:52 #12
jeg kan bare ikke se, hvordan jeg skal lave netop det her uden brug af javascript?
+ brugeren har muligheden for at slå javascript til og fra, uden at brugeren skal til at downloade en hel ny browser!

Men hvis jeg kan lave det anderledes hører jeg gerne hvordan ;)
Avatar billede roenving Novice
28. oktober 2003 - 21:52 #13
Kommaet var en meget nødvendig adskiller af to _forskellige_ parametre, men det har du forhåbentligt indset !-)

-- ehh, jeg forstår ik' li'e ...

Påstår du at Safari ikke forstår ganske almindelig html 4.01 basics ?-)
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 21:54 #14
Det virker ikke - så ja, så forstår safari det vel ikke, hvis du siger det virker :P
Avatar billede roenving Novice
28. oktober 2003 - 21:54 #15
-- men OK, html 4 har jo også kun været standard i 5 år og hverken M$ eller nogle andre store firmaer i branchen har implementeret css2 fuldt ud (som har samme årgang !-)

-- men jeg havde forstået, at de små gjorde meget ud af at gøre det ?-)
Avatar billede myplacedk Nybegynder
28. oktober 2003 - 22:03 #16
DHTML er som skabt til at fejle. ;-)
Skal det virke i alle browsere, så drop DHTML. Det er kun for den rette kombination af mainstream-browsere, og et udfatteligt tidsforbrug på at skrive kode som virker.

Jeg anbefaler at lave noget simpelt HTML. Det virker hver gang, og behøver ikke at være grimt. Når det er på plads kan man så evt. bygge noget javascript ovenpå, som så kan virke eller lade være.
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 22:15 #17
>myplacedk
jeg blev mere forvirret ;)
Avatar billede roenving Novice
28. oktober 2003 - 22:37 #18
Hvis du vil have det til at virke i alle browsere, så bed folk om at komme hjem til og hente en diskette eller en cd (Men den dur jo heller ikke i computere uden cd-drev !-)

-- desuden skal du være opmærksom på, at du skal skrive det i 26 forskellige c++-implementeringer, som kan passe til det aktuelle styresystem ...

-- det er godt nok lidt simplere at skrive html efter standarden -- og hvis det er en forretningsmæssig nødvendighed, og du er ligeglad med evt. tidsmæssige problemer vedrørende download skal du _alene_ lave det i serverside scripting, som kan generere (næsten !-) problemløs html-kode hver gang folk vælger en mulighed ...

-- brug en fornuftig standard (jeg tænker i html 4.01 + css2(1) !-), og hvis du oplever konkrete problemer i et nødvendigt brugersegment, må du justere ...
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 22:42 #19
>Hvis du vil have det til at virke i alle browsere, så bed folk om at komme hjem til og hente en diskette eller en cd (Men den dur jo heller ikke i computere uden cd-drev
Der er ingen grund til at gå over gevind! Man skal jo tage hensyn til ALLE!
Det der er direkte plat jo!

Jeg finder en løsning... Håber jeg, om det så skal laves i HTML og PHP kun...
Avatar billede myplacedk Nybegynder
28. oktober 2003 - 22:45 #20
OK, du får den simple udgave. ;-)

Javascript fejler. Vil du lave noget som virker i så mange browsere som muligt, så lad være med at bruge javascript.

Når det så virker, kan du (hvis du gør det rigtigt) lave noget javascript som forbedrer funktionaliteten, uden at ødelægge noget på de maskiner, hvor det ikke virker.
Avatar billede roenving Novice
28. oktober 2003 - 22:46 #21
Selvfølgelig skal du tage hensyn til alle, men du finder altså heller ikke idag biler, som tager hensyn til at folk ikke vil have tag på -- alle har det i en eller anden form !-)
Avatar billede roenving Novice
28. oktober 2003 - 22:51 #22
Javascript fejler _ikke_ -- det er noget vrøvl !-)

Selvfølgelig findes der fejl i javascript-kode, men dem kan vi da sagtens rette ...

-- men det er selvfølgelig klart et problem, hvis man vil have alle skoleeleverne med og dem, som surfer fra overbeskyttede firma-netværk, som har slået muligheden for javascript fra (som jo i ie/windows er snævert koblet til anden active scripting, hvor VBscript, som _kan_ skade, skal slås selvstændigt fra et helt andet sted !-)

-- det du oplever er såvidt jeg forstår et helt andet problem, som jeg slet ikke forstår, medmindre du har bedt din egen Safari-installation om ikke at kunne afvikle javascript ?-)
Avatar billede myplacedk Nybegynder
28. oktober 2003 - 23:00 #23
> Javascript fejler _ikke_ -- det er noget vrøvl !-)
*g*

http://www.thecounter.com/stats/2003/May/javas.php
Thu May 1 00:05:02 2003 - Sat May 31 23:55:04 2003  31.0 Days
Javascript 1.2+: 32815350 (86%)
Javascript <1.2: 128196 (0%)
Javascript false: 5170035 (13%)

De første 13% vil det helt sikkert ikke virke på. Spørgsmålet er så hvor mange af de resterende 86% det heller ikke virker på.

Til sammenligning:
http://www.thecounter.com/stats/2003/May/os.php
5. Mac          881868     (2%)

Mine egne statistikker og fornemmelser peger i samme retning. Derfor synes jeg det er vigtigere at kunne klare sig uden javascript, end at bøvle med at få navigations-kritisk javascript til at køre på mac, hvis formålet er at det skal virke på så mange browsere som muligt.
Avatar billede mtrolle Nybegynder
28. oktober 2003 - 23:02 #24
Javascript er slået til... Jeg tror det er funktionen der "ødelægger" det for mig...
Avatar billede myplacedk Nybegynder
28. oktober 2003 - 23:04 #25
mtrolle> Du må kunne få Safari til at sige et eller andet om hvad der er galt... Det er ikke nemt at debugge ud fra "Det virker ikke". ;-)
Avatar billede roenving Novice
28. oktober 2003 - 23:05 #26
Der er i ovenstående javascript _ikke_ brugt funktioner, som ikke har været standard i mindst 5 år -- derfor forstår jeg ikke dit Safari-problem ...

Såvidt jeg har forstået er den første Safari fra '99 eller '00 så den skulle kende alt til den slags !-)
Avatar billede mtrolle Nybegynder
29. oktober 2003 - 12:41 #27
www.ontv.dk - nu virker det ;)'

Læg et svar begge to - I har begge været til stor hjælp!
Avatar billede roenving Novice
30. oktober 2003 - 15:26 #28
Jamen, så velbekomme '-)
Avatar billede roenving Novice
02. december 2003 - 15:00 #29
-- og tak for points ;~}
Avatar billede mtrolle Nybegynder
02. december 2003 - 15:11 #30
selv tak! du fik dem alle, da du var den eneste der gad lægge et svar ;)
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