Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Działania na zmiennych
LewyM1
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Witam. Nie dawno przeczytałem kurs jQuery i nie zostały w nim opisane działania na zmiennych. Mógłby mi ktoś wytłumaczyć to, szukałem w GOOGLE, ale nic ciekawego nie znalazłem. Jest w ogóle taka możliwość? Czekam na odpowiedź. Pozdrawiam.

Ten post edytował LewyM1 9.09.2011, 13:23:33
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Działania na zmiennych? A co masz na myśli? zmienne generalnie do jQuery nic nie mają - zmiennę są w js.
Go to the top of the page
+Quote Post
phpion
post
Post #3





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Przeczytaj pierwszy-lepszy kurs JavaScript + http://docs.jquery.com/Types
Go to the top of the page
+Quote Post
LewyM1
post
Post #4





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Działania w JavaScript, reszta w jQuery (pomyłka). Mam coś takiego:
  1. var min_liczba = 1;
  2. var max_liczba = 3;
  3. var liczba = 1;
  4. if (liczba !== min_liczba) {
  5. $("#left").click(function(){
  6. $(".element").animate({"left": "+=250px"}, "slow");
  7. liczba++;
  8. });
  9. }
  10. if (liczba !== max_liczba) {
  11. $("#right").click(function(){
  12. $(".element").animate({"left": "-=250px"}, "slow");
  13. liczba--;
  14. });
  15. }

Działania w 7 i 13 linijce nie działają. Może gdzieś popełniłem błąd?
Go to the top of the page
+Quote Post
luckyps
post
Post #5





Grupa: Zarejestrowani
Postów: 153
Pomógł: 41
Dołączył: 28.06.2011
Skąd: Częstochowa

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


operatory js
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Coś ci się pomieszało. A niby jak ma działać jak
1) Dajesz warunki
if (liczba !== min_liczba) {
Przecież on nigdy nie jest spelniony.
2)
Dodatkowo warunkowo przypinasz zdarzenie click. Czyli nawet jeśli warunek by pozwolił na podpiecie zdarzenia, to zadziala dopiero jak klikniesz
Go to the top of the page
+Quote Post
LewyM1
post
Post #7





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


@luckyps, dzięki, właśnie tego szukałem.
@flashdev, poniżej jest cały kod.
@nospor, Nie będzie działać jak zmienna liczba = 2?

Tak wygląda cały kod, już po podpowiedziach.
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  4. <script src="http://code.jquery.com/jquery-latest.js"></script>
  5. <style type="text/css">
  6. * {
  7. margin: 0;
  8. padding: 0;
  9. }
  10. .slider {
  11. float: left;
  12. position: relative;
  13. overflow: hidden;
  14. height: 150px;
  15. width: 250px;
  16. }
  17. .slider ul {
  18. list-style-type: none;
  19. position: absolute;
  20. clear: both;
  21. overflow: hidden;
  22. width: 750px;
  23. }
  24. .slider ul li {
  25. float: left;
  26. width: 250px;
  27. height: 150px;
  28. }
  29. <title>Slider</title>
  30. </head>
  31. <div class="slider">
  32. <ul class="element">
  33. <li>
  34. <p>BLabla</p>
  35. </li>
  36. <li>
  37. <p>BLabla2</p>
  38. </li>
  39. <li>
  40. <p>BLabla3</p>
  41. </li>
  42. </ul>
  43. </div>
  44. <button id="left">&larr;</button><button id="right">&rarr;</button>
  45. var min_liczba = 1;
  46. var max_liczba = 3;
  47. var liczba = 1;
  48. $("#left").click(function(){
  49. if (liczba !== min_liczba) {
  50. $(".element").animate({"left": "+=250px"}, "slow");
  51. liczba = liczba++;
  52. }
  53. });
  54. $("#right").click(function(){
  55. if (liczba !== max_liczba) {
  56. $(".element").animate({"left": "-=250px"}, "slow");
  57. liczba = liczba--;
  58. }
  59. });
  60. </body>
  61. </html>
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
@nospor, Nie będzie działać jak zmienna liczba = 2?
Wiesz, teraz zmienieś kod (IMG:style_emoticons/default/smile.gif)

Nie mniej jednak masz dziwną logikę tego skryptu

if (liczba !== max_liczba) {
liczba--

Na dzien dobry jest liczba =1 wiec klikając w prawy liczba będzie zmniejszana, czyli bedzie 0, -1, -2
Go to the top of the page
+Quote Post
LewyM1
post
Post #9





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Mój błąd, poprawiłem, ale działanie dalej nie działa.
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Za bardzo nie wiem co poprawiles.
Bo jesli masz na mysli to:
liczba--
na
liczba = liczba--
to jest bez sensu poprawa.
liczba-- samo w sobie jest ok.
Chodzi o logikę, którą wyjaśniłem ci w poprzednim poście.
Go to the top of the page
+Quote Post
LewyM1
post
Post #11





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 22.02.2011
Skąd: Sierpc

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


Problem rozwiązany, strona w3schools wprowadziła mnie w błąd
Cytat
x=y++
. Dziękuję nospor za pomoc.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 8.09.2025 - 07:28