• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Problem z Javascriptem

Object Storage Arubacloud
0 głosów
174 wizyt
pytanie zadane 18 grudnia 2015 w JavaScript przez gab123 Mądrala (5,230 p.)

Mam problem z javascriptem wszystkie kody w nim napisanie nie sa wykonywane na stronie (mimo ze HTML i CSS działa) zrobiłam już 3 programy ale żaden się nie wyswietla domyślam się ze to mój blad a nie komputera ale nie wiem na czym polega wkleje jeden z kodow będę wdzieczna za pomoc.

<script type = "text/javascript">
var licznik = 1;

function zmienslajd () {

licznik ++ ; if(licznik>4) licznik = 1;
switch(licznik){
case 1:
document.getElementById("slider").innerHTML ="z1.jpg" ;
break ;
case 2 :
document.getElementById("slider").innerHTML="z2.jpg" ;
break ;
case 3:
document.getElementById("slider").innerHTML="z3.jpg" ;
break ;
case 4:
document.getElementById("slider").innerHTML="z4.jpg" ;
break ;
default:
document.getElementById("slider").innerHTML="z5.jpg" ;
}

setTimeout("zmienslajd()"5000) ;
}
</script>
<body onload = "zmianslajd();">

Dziekuje z góry za pomoc

3 odpowiedzi

0 głosów
odpowiedź 18 grudnia 2015 przez ArturS Początkujący (260 p.)

spróbuj odpalić to firefoxie, mi na chromie skrypty się nie odpalały, a poza tym chyba masz niepotrzebny średnik przy nazwie funkcji. Spróbuj tak:

<body onload = "zmianslajd()">

 

komentarz 18 grudnia 2015 przez gab123 Mądrala (5,230 p.)
sprawdzałam na wszystkich przeglądarkach jakie mam na komputerze (firefox, chrome, IE) na zadnej scripty nie dzialaja ): Ale i tak dzięki za pomoc (:
0 głosów
odpowiedź 18 grudnia 2015 przez writen Nałogowiec (29,060 p.)
edycja 18 grudnia 2015 przez writen
przyjrzyj się dokładnie 24 linijce.
komentarz 18 grudnia 2015 przez gab123 Mądrala (5,230 p.)
rzeczywiście brakuje przecinka. Dziękuje. Kod co prawdza caly czas niestety nie działa.
komentarz 18 grudnia 2015 przez writen Nałogowiec (29,060 p.)

ojejej. 

Tak się to robi:

setTimeout(function() {
  	zmienslajd();
  },5000);

A licznik++; powinno być na końcu funkcji.

Wywal to: onload = "zmianslajd();"

Cały skrypt przenieś tuż przed </body>, a najlepiej umieść go w osobnym pliku js.

I wywołaj po prostu funkcję zmienslajd();

komentarz 18 grudnia 2015 przez gab123 Mądrala (5,230 p.)
Dziekuje ale caly czas nie dziala
–1 głos
odpowiedź 18 grudnia 2015 przez ShiroUmizake Nałogowiec (46,300 p.)
Funkcja setTimeout , wykona Ci tylko raz. Jeżeli chcesz, ciągłośc działanie funkcji, użyj funkcji setInterval. Czyli : (globalna) var id (lokalnie czyli w funkcji) id= setInterval (funckja, czas). Break używamy  tylko do pętli. Jeżeli chcesz przerwać wykonanie switcha użyj np:return.
komentarz 18 grudnia 2015 przez writen Nałogowiec (29,060 p.)
Takie bzdury popisałeś, że głowa boli. W kodzie autora pytania funkcja zmienslajd będzie wykonywana rekurencyjnie co 5 sekund. Oczywiście gdyby nie było błędów.

return służy do zwracania wartości przez funkcję. Do zakończenia instrukcji warunkowych służy słówko break.

Za używanie zmiennych globalnych powinna być publiczna chłosta.
komentarz 18 grudnia 2015 przez gab123 Mądrala (5,230 p.)
Dziekuje, ale scripty caly czas się nie wykonują.
komentarz 18 grudnia 2015 przez ShiroUmizake Nałogowiec (46,300 p.)
edycja 18 grudnia 2015 przez ShiroUmizake
Teraz spojrzałem i brakuje przecinka w setTmeout :).

SetTimeout wykona się raz. Czyli załaduje stronę, wykona funkcje setTimeout i wyświetli.się pierwszy obrazek i zakończy funckję. No chyba, że ja żle zrozumiałem setTimeout. Jeżeli tak, proszę mnie wyprowadzić z błędu.
Technicznie sprawdziłem u siebie na switchu , który jest uruchamiany na onload. I wykonał się tylko raz.
 

https://developer.mozilla.org/pl/docs/Web/API/Window/setTimeout
komentarz 18 grudnia 2015 przez writen Nałogowiec (29,060 p.)

A wiesz co to jest rekurencja i widzisz gdzie w tym kodzie znajduje się wywołanie setTimeout?

komentarz 18 grudnia 2015 przez ShiroUmizake Nałogowiec (46,300 p.)
Odwołuje się sama do siebie.  Dobra juź czaje. To przepraszam ja byłem w błędzie.

Podobne pytania

0 głosów
1 odpowiedź 167 wizyt
pytanie zadane 26 września 2015 w JavaScript przez Sprat Użytkownik (620 p.)
0 głosów
1 odpowiedź 100 wizyt
pytanie zadane 18 kwietnia 2016 w C i C++ przez NTXFN Gaduła (3,430 p.)
0 głosów
1 odpowiedź 477 wizyt
pytanie zadane 31 stycznia 2018 w JavaScript przez kingkushlee Gaduła (3,960 p.)

92,620 zapytań

141,471 odpowiedzi

319,795 komentarzy

62,002 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...