![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 7 Dołączył: 3.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
Czy jest jakiś sposób aby w tym przykładzie
parametr animate (czy jakiejkolwiek innej metody) przyjął nazwę ze zmiennej? W przykładzie powyżej direction jest traktowane dosłownie. [EDIT] ...oczywiście chodzi mi o rozwiązanie inline a nie w stylu
Ten post edytował WiruSSS 13.09.2013, 17:37:24 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Cytat ...oczywiście chodzi mi o rozwiązanie inline a nie w stylu Właśnie tak to się robi. Zostaje jeszcze eval, ale to najgorsze rozwiązanie. Opisz po co Ci to - może znajdziemy jeszcze lepsze rozwiązanie. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 7 Dołączył: 3.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
właśnie po to, z tym ze tych parametrów będzie więcej, a ich nazwy będą zależne od położenia samego obiektu względem rodzica
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
To zrób funckcję i po problemie (IMG:style_emoticons/default/smile.gif)
Kod function mojaAnimacja( el, type, value ){ json= {}; json[ type ] = value; $( el ).animate( json ); } mojaAnimacja( "#moje-id", "left", "300px"); mojaAnimacja( "#moje-id", "top", "300px"); mojaAnimacja( "#moje-id", "width", "300px"); Oczywiście lepiej będzie jak stworzysz to jako własną funkcję/metodę jQuery: http://jquery-howto.blogspot.com/2008/12/h...nctions-to.html Pozdrawiam |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 717 Pomógł: 120 Dołączył: 18.04.2009 Ostrzeżenie: (0%) ![]() ![]() |
też mi się wydaje, że to co zostało już powiedziane: albo w kilku linijkach, albo zrobić funkcję.
chociaż przykład mojego przedmówcy w sumie niewiele rozwiązuje, bo i tak trzeba ileś linijek wrzucić na pisanie mojaAnimacja. Może coś takiego ? Kod function makeObject() { var obj = {}; Array.prototype.slice.call(arguments).forEach(function(kv) { obj[kv[0]] = kv[1]; }); return obj; }; a potem: Kod var direction = 'left', value = 400, direction2 = 'top', value2 = 60; $("#test").animate(makeObject([direction, value], [direction2, value2])); (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 7 Dołączył: 3.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
...jednak zostałem przy opcji z dodatkową zmienną, efekt można zobaczyć pod tym samym linkiem. Jedyne co mi się nie podoba, to to, że zmienne muszę tworzyć 3 razy. Jak najlepiej przekazać te zmienne do metod showMenu i hideMenu, przez parametry? Czy może jest lepszy sposób?
http://jsfiddle.net/WiruSSS/zPXUK/ Ten post edytował WiruSSS 14.09.2013, 16:11:53 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.09.2025 - 04:46 |