Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][HTML]Przenoszenie kogoś do rejestracji po danym czasie
Forum PHP.pl > Forum > Przedszkole
Watt
Witam,

Mam pytanie chciałbym przenieśc kogoś do rejestracji jesli przebywał 45 sek na mojej stronie, ale mam też drugi problem, jak wyłączyc to przenoszenie, gdy user zacznie wypełniać formularz szybkiej rejestracji? (Wiem, że trzeba postawić na evencie onClick, ale jak wyłączyć przenoszenie ?)
kfc4
Nie jestem zbyt dobry z JS, więc, wybacz, nie poprę tego kodem:
Funkcja zacznijOdliczanie - dodaje sekundy do jakiegoś licznika;
Funkcja zakonczOdliczanie - zakańcza odliczanie, ewentualnie zeruje licznik co ileś tam sekund;
Funkcja przenies - przenosi użytkownika;
Funkcja, którą wywołasz po załadowaniu strony:
- odpala odliczanie,
- sprawdza czy w liczniku jest jest już ileś tam sekund,
- jeżeli użytkownik już siedzi swój określony czas to go przenosisz
- jeżeli kliknie, w któreś z pól formularza to zakańczasz odliczanie, dzięki czemu licznik nigdy nie osiągnie swojej magicznej liczby, a użytkownik nie zostanie przeniesiony.

Ja bym szedł w tę stronę.
Watt
Normlanie ejchałem na czymś takim:

Kod
    <meta http-equiv="refresh" content="600">

i to było w sekcji head i było okej, ale żeby to usunąć javascriptem musiałbym to wrzucić w jakiegoś diva a w headzie nie można divów dawać ?
Andaramuxo
Można też header(refresh). W JS można też dać po akcji setTimeout.
Watt
Header (refresh) w php czy jest taka funkcjia w JS ?
Andaramuxo
O to Ci chodzi? http://www.hscripts.com/tutorials/javascri...ut-function.php
ziqzaq
IMHO potrzebne ci są:
1. setTimeout,
2. window.location (przeniesienie na stronę rej.),
3. stworzenie zmiennej odpowiedzialnej za przerwanie przekierowania (odliczania) do rejestracji (np. var stopRedir = false),
4. podpięcie się pod zdarzenie "onfocus" w polach formularza (ustawienie stopRedir = true).
Tylko czy jak użytkownik wejdzie na ten formularz szybkiej rejestracji i go opuści bez zatwierdzania to ci będzie przeszkadzać? Bo jeśli tak to trzeba jeszcze obsłużyć i taką opcję.
Pozdr.
Pawel_W
zrób
  1. var t = setInterval('window.location = "strona.pl"', 45000);


i czyszczenie
  1. clearInterval(t);



nie wiem czy do setTimeout też jest clear winksmiley.jpg
Watt
Dzięki, nie wiedziałem, że w JS mozna przenieść (myślałem ze tylko w php i html), dzieki za widnow.location.

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.