Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Zablokować button na 5 sekund
matis95
post 17.01.2011, 20:15:19
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 18.12.2009

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


Witam. Czy da się zablokować możliwość kliknięcia w button na 5s tzn. kliknę w button raz, i drugi raz mogę dopiero za 5s. Moja strona po kliknięciu w button się nie odświeża, bo ładuje treść do diva za pomocą jQuery.
Go to the top of the page
+Quote Post
ADeM
post 17.01.2011, 20:22:39
Post #2





Grupa: Zarejestrowani
Postów: 455
Pomógł: 69
Dołączył: 23.10.2004
Skąd: Oświęcim

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


  1. $(submitButton).attr("disabled", "disabled"); // To disable
  2. $(submitButton).removeAttr("disabled"); // To enable


--------------------
Go to the top of the page
+Quote Post
kalmaceta
post 17.01.2011, 20:30:34
Post #3





Grupa: Zarejestrowani
Postów: 183
Pomógł: 24
Dołączył: 4.12.2010

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


jeśli chodzi o czasy zakończonych poprzednich operacji najlepiej callback function użyć, jeśli konkretnie o 5 sek. setTimeout


--------------------
kAlmAcetA
Go to the top of the page
+Quote Post
matis95
post 17.01.2011, 21:03:58
Post #4





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 18.12.2009

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


Chciałbym, aby jeśli kliknie się szybciej niż w czasie 5s od poprzedniego kliknięcia to wyświetlał się alert.
Go to the top of the page
+Quote Post
markonix
post 17.01.2011, 21:19:11
Post #5





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Na wyłączonym (disabled) buttonie nie wywołasz akcji kliknięcia więc albo to albo to.


--------------------
Go to the top of the page
+Quote Post
matis95
post 17.01.2011, 21:28:44
Post #6





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 18.12.2009

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


Ale chciałbym aby ten button był włączony i po naciśnięciu wywołuje funkcję. Jeśli naciśniemy drugi raz, a nie minie 5s to wyświetla alert, a jeśli minęło 5s to ponownie wykonuje funkcję.
Moja funkcja to
Kod
$('#result').load('ściezka');


Ten post edytował matis95 17.01.2011, 21:29:23
Go to the top of the page
+Quote Post
kalmaceta
post 17.01.2011, 21:35:49
Post #7





Grupa: Zarejestrowani
Postów: 183
Pomógł: 24
Dołączył: 4.12.2010

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


w onclicku buttona:

[JAVASCRIPT] pobierz, plaintext
  1. if ($('#buttonik').attr('rel') == 'klik'){
  2. alert('bylo');
  3. return false;
  4. } else {
  5. $('#buttonik').attr('rel','klik');
  6. $('#buttonik').css('color','grey'); //wyszarzenie
  7.  
  8. // tutaj rob co chesz
  9. windows.setTimeout((function (){$('#buttonik').attr('rel','ok');}),5000);
  10. }
[JAVASCRIPT] pobierz, plaintext


Ten post edytował kalmaceta 17.01.2011, 21:36:36


--------------------
kAlmAcetA
Go to the top of the page
+Quote Post
matis95
post 17.01.2011, 22:16:58
Post #8





Grupa: Zarejestrowani
Postów: 17
Pomógł: 1
Dołączył: 18.12.2009

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


Dzięki. Działa. Ale musiałem usunąć windows przed setTimeout bo nie działało. Dodałem jeszcze
Kod
$('#buttonik').css('color','black')
aby po 5s napis buttona znów robił się czarny.

Dla przyszłych pokoleń tongue.gif
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
  3. <title>Title</title>
  4. <script type="text/javascript" src="javascript/jquery.js"></script>
  5. <script type="text/javascript">
  6. <!--
  7. function action()
  8. {
  9. if ($('#buttonik').attr('status') == 'locked'){
  10. alert('Musisz odczekać 5 sekund');
  11. return false;
  12. }
  13. else {
  14. $('#buttonik').attr('status','locked');
  15. $('#buttonik').css('color','grey');
  16. //kod do wykonania
  17. setTimeout((function(){$('#buttonik').attr('status','unlocked'); $('#buttonik').css('color','black');}),5000);
  18. }
  19. }
  20. -->
  21. </head>
  22. <input type="submit" value="klik" onclick="action()" id="buttonik" />
  23. </body>
  24. </html>
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: 10.07.2025 - 08:13