Avatar billede htx98i17 Professor
04. juni 2017 - 08:18 Der er 9 kommentarer og
1 løsning

Vis billede nr 1 automatisk

Jeg har copy pastet følgende script ind på min side

https://www.w3schools.com/howto/tryit.asp?filename=tryhow_js_slideshow

Når man klikker på linktet og ser eksemplet, viser eksemplet automatisk det første billede.

Men efter jeg paster koderne ind på min side vælger den ikke det første foto automatisk når siden loader. Jeg skal klikke på en af dottene før at der vises et billede.

Jeg håber nogen kan få mig på sporet uden at jeg skal til at kreere en side, som alligevel ikke er autentisk.
Avatar billede htx98i17 Professor
04. juni 2017 - 09:26 #1
Jeg tror måske jeg har fundet problemet. Jeg har pastet JS-koden ind i head og så vælger den ikke automatisk det første foto?
Avatar billede Slater Ekspert
04. juni 2017 - 09:28 #2
#1: Korrekt. Der er en grund til at de har lagt scriptet nederst på siden. De kører showSlides(1); direkte, som er den der vælger det første billede. Det kræver at HTML'en allerede er indlæst, hvilket den ikke er i head.

Hvis du vil have scriptet skal stå i head eller øverst på siden, skal du vente med at udføre indhold til siden er loadet. Det kan du gøre med:
window.addEventListener('DOMContentLoaded', function() {
  showSlides(1);
});
Avatar billede htx98i17 Professor
04. juni 2017 - 09:37 #3
er din kode i stedet for

var slideIndex = 1;
showSlides(slideIndex);

?
Avatar billede Slater Ekspert
04. juni 2017 - 09:38 #4
Ja, det gør ingen forskel om man sætter en variabel der indeholder "1", eller om man bare smider 1 ind i funktionen direkte. Jeg forkortede det bare.
Avatar billede htx98i17 Professor
04. juni 2017 - 09:41 #5
Jep,

men det hjælper faktisk ikke lige? :(
Er syntaxen som den skal være, den ser lidt underlig ud, men jeg ved desværre meget lidt om JS.
Avatar billede htx98i17 Professor
04. juni 2017 - 09:46 #6
aahh var slideIndex = 1; skal beholdes, så virker det.

Jeg gad godt jeg kunne noget mere JS så jeg ikke behøvest at copy/paste sådanne scripter.

Mange tak for hjælpen.

Ved du iøvrigt hvor kompatible browsere på de forskellige enheder understøtter scriptet?
Avatar billede Slater Ekspert
04. juni 2017 - 09:52 #7
Ja, beklager. slideIndex variablen bruges andre steder, så den skal stadig eksistere - forkortelsen jeg lavede var kun for at beskrive det kortere. Det skulle jeg have gjort mere klart.

Koden er meget simpel, så jeg kan ikke forestille mig andet end at den understøttes af alt nu. I hvert fald fungerer den fint på nyeste desktop-versioner af IE, Edge, Chrome og Firefox.
Avatar billede htx98i17 Professor
04. juni 2017 - 09:57 #8
Jeg er ved at lave en responsive hjemmeside. Jeg har testet på min iphone i chrome og der fungerer det i hvert fald.
Avatar billede Slater Ekspert
04. juni 2017 - 10:00 #9
Jeg har en Android, så kan kun lige teste det i Chrome der, men jeg tror ikke der er noget at bekymre dig om. Det er som sagt meget simpel kode - ikke nogle mere moderne features benyttet.
Avatar billede htx98i17 Professor
04. juni 2017 - 10:03 #10
takker
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

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