Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript][PHP]opóźnienie wyświetlania
shreker
post 1.10.2010, 11:50:56
Post #1





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 21.05.2008

Ostrzeżenie: (0%)
-----


Potrzebuję zrobić opóźnienie wyświetlania elementów na stronie:
1. po uruchomieniu wyświetla się np. witaj,
2. po odstępie czasowym np. 5 sek. wysietla się tekst1,
3. po kolejnym odstępie kolejnych np. 5 sek. wyświetla się tekst2,
4. po kolejnym odstępie kolejnych np. 5 sek. wyświetla się tekst3,
5. na koniec po oczywiście kolejnych 5 sek. wyświetla się zakończono.

oczywiście jest to uproszczona wersja, ale jak to można zrobić ?
Go to the top of the page
+Quote Post
Fifi209
post 1.10.2010, 11:56:22
Post #2





Grupa: Zarejestrowani
Postów: 4 655
Pomógł: 556
Dołączył: 17.03.2009
Skąd: Katowice

Ostrzeżenie: (0%)
-----


Zapomniałeś napisać gdzie masz problem i również zapomniałeś podać kodu.

Temat: Jak poprawnie zadac pytanie
Temat: JavaScript jesli Twoj watek go dotyczy KONIECZNIE przeczytaj

Zacznij od tego.


--------------------
Zainteresowania: C#, PHP, JS, SQL, AJAX, XML, C dla AVR
Chętnie pomogę, lecz zanim napiszesz: Wujek Google , Manual PHP
Go to the top of the page
+Quote Post
Quantum
post 1.10.2010, 12:21:02
Post #3





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


@fifi209 autor tematu chyba nie ma kompletnie pomysłu jak to ugryźć smile.gif
do obu rozwiązań:
  1. Tekst "witaj" ustawiasz jako domyślną wartość wybranego elementu DOM.
  2. Tworzysz tablicę, do której wrzucisz te teksty

sposób 1.
  1. Tworzysz funkcję, która będzie operowała na wybranym elemencie DOM
  2. Iterujesz po tablicy pętlą (for) i przypisujesz aktualną wartość uruchamiając ową funkcję z argumentem przez setTimeout('funkcja("' + str +'")', 5000)

sposób 2.
  1. Korzystając z domknięć operujesz na tablicy z tekstami.
  2. Wycinasz pierwszy element tablicy uprzednio przypisując jego wartość do jakiegoś elementu na stronie przez DOM.
  3. Ostatnią instrukcją jest sprawdzenie czy liczba elementów tablicy == 0, jeżeli tak używasz clearInterval(window.intval)
  4. Później odpalasz ją window.intval = setInterval(funkcja, 5000).

działaj, jeżeli coś nie będzie wychodzić to wpadnij z kodem winksmiley.jpg

Ten post edytował Quantum 1.10.2010, 12:50:28
Go to the top of the page
+Quote Post
shreker
post 1.10.2010, 12:35:25
Post #4





Grupa: Zarejestrowani
Postów: 270
Pomógł: 0
Dołączył: 21.05.2008

Ostrzeżenie: (0%)
-----


Quantum dokładnie o coś podobnego chodzi, i rzeczywiście nie wiem kompletnie jak to ugryźć. Natomiast fifi209 albo nie potrafi czytać ze zrozumieniem albo idzie w ilość postów, a nie ich jakość. Skoro wszystko o wszystkim wie to może pokaże co potrafi. Gdybym wiedział w zarysach jak to zrobić to bym nie pisał, co do kodu to najpierw trzeba mieć pomysł żeby był kod.
Go to the top of the page
+Quote Post
kamil4u
post 1.10.2010, 12:53:59
Post #5





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

Ostrzeżenie: (0%)
-----


A czego konkretnie nie wiesz?
- tablice: https://developer.mozilla.org/pl/Dokumentac...5/Obiekty/Array
- referencja - DOM: http://kurs.browsehappy.pl/JavaScript/DOM
- innerHTML: https://developer.mozilla.org/en/dom:element.innerhtml
- setInterval: https://developer.mozilla.org/pl/DOM/window.setInterval

Pseudokod:
Kod
tablica = ['start','tekst1','tekst2','koniec'];
var el = referencja_do_elementu;
Powtarzaj co 5000milisekund{
el.zawartość_Elementu = tablica.(usuń pierwszy element i zwróć go);
if( długość_tablicy == 0) przestań_powtarzać();
}


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.07.2025 - 14:57