Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [jQuery] Problem z selectorem :eq(index)
paramoralny
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 6.09.2010

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


Witam,
jestem grafikiem-amatorem, który postanowił wziąć się za projektowanie stron www i w trakcie nauki napotykam różne problemy po czym staram się je zrozumieć

tego rozgryźć nie mogę chociaż wydaje się prosty

chcę żeby elementy paska nawigacyjnego pojawiały się po kolei, działa gdy każdemu nadam oddzielne id ale staram się to pominąć i skorzystać z szerokiej gamy dostępnych 'wybieraczy'
.nav:eq(0),.nav:eq(1),.nav:eq(2)... w teorii wybierają kolejne elementy o class="nav", w praktyce wyskakuje pierwszy i basta...

CODE
$(".centered").click(function()
{
$(this).slideToggle('fast');
$(".nav:eq(0)").css({"lineHeight":"100px","overflow":"visible"}).animate({height:'100px', width:'100px'},{duration: 500,easing:'easeOutElastic'},function()
{$(".nav:eq(1)").css({"lineHeight":"100px","overflow":"visible"}).animate({height:'100px', width:'100px'},{duration: 500,easing:'easeOutElastic'},function()
{$(".nav:eq(2)").css({"lineHeight":"100px","overflow":"visible"}).animate({height:'100px', width:'100px'},{duration: 500,easing:'easeOutElastic'},function()
{$(".nav:eq(3)").css({"lineHeight":"100px","overflow":"visible"}).animate({height:'100px', width:'100px'},{duration: 500,easing:'easeOutElastic'},function()
{$(".nav:eq(4)").css({"lineHeight":"100px","overflow":"visible"}).animate({height:'100px', width:'100px'},{duration: 500,easing:'easeOutElastic'});
});
});
});
});
});


próbowałem też przerobić ten kod na prostszy: pętle wywołującą kolejne nav-y ale okazało się to nie na moją głowę, może na to też macie pomysł?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
everth
post
Post #2





Grupa: Zarejestrowani
Postów: 782
Pomógł: 153
Dołączył: 21.07.2010

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


Może coś prostszego (IMG:style_emoticons/default/winksmiley.jpg)
[JAVASCRIPT] pobierz, plaintext
  1. jQuery.fn.showCascade = function(options) {
  2. var settings = jQuery.extend({
  3. duration: 500,
  4. height: '100px',
  5. width: '100px',
  6. easing:'easeOutElastic',
  7. css:{"lineHeight":"100px","overflow":"visible"}
  8. }, options);
  9.  
  10. var inputObj = $(this);
  11. var iter= {i:-1, end:inputObj.length};
  12.  
  13. function showThisItem(obj) {
  14. if (!obj) return;
  15. obj.css(settings.css).animate(settings,
  16. settings.duration,
  17. settings.easing,
  18. function() {
  19. showThisItem(getNext());
  20. }
  21. );
  22. }
  23. function getNext() {
  24. iter.i++;
  25. return (iter.i<iter.end) ? inputObj.eq(iter.i):false;
  26. }
  27. showThisItem(getNext());
  28. return this;
  29. }
  30. //użycie
  31. $('.nav').showCascade();
  32. //z modyfikatorami
  33. $('.nav').showCascade({
  34. duration:1000,
  35. easing:false,
  36. css:{"lineHeight":"200px","overflow":"none"}
  37. });
[JAVASCRIPT] pobierz, plaintext


Ten post edytował everth 6.09.2010, 22:57:25
Go to the top of the page
+Quote Post
paramoralny
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 6.09.2010

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


Cytat(masiakla @ 6.09.2010, 21:21:33 ) *
Wersja, którą tu forsujesz nie istnieje, on zapewne podbiera ją pod pierwsze z pustym callbackiem. Więc wywołanie jej powinno raczej wyglądać tak:


to plugin jquery.easing.1.3.js

@everth
nie wiem co w tym prostego, staram się zrozumieć: reference w łapę i czytamy

ale nie działa (IMG:style_emoticons/default/sad.gif)
myśle, że to przez plugin z easingami (wymaga innej składni przy animate)
Go to the top of the page
+Quote Post

Posty w temacie


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.10.2025 - 12:38