![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Witam,
chcę sobie napisać prościutki system zakładek ale utknąłem w pewnym miejscu i nie bardzo wiem jak to rozegrać: Kod var Tabs = new Class({ initialize: function(menu, content) { this.menu = menu; this.content = content; $(this.content).getChildren().setStyle("display", "none"); $(this.menu).getElements("a").addEvent("click", function(e){ e.stop(); // tu mam problem }); } }); W konstruktorze menu oznacza listę <ul> z menu, natomiast content to div zawierający divy z zawartościami poszczególnych zakładek. I teraz problem: do każdego linku chciałbym dodać funkcję ($(this.menu).getElements("a").addEvent("click")), wewnątrz której miałbym dostęp zarówno do klikniętego linku w celu pobrania np. this.href oraz równocześnie dostęp do aktualnego obiektu klasy Tabs aby pobrać wartość this.menu. Jak to zrobić? Tak sobie wyświetlam href linku: Kod $(this.menu).getElements("a").addEvent("click", function(e){ e.stop(); alert(this.href); }); Natomiast tak (dodając bind()) mogę dostać się do aktualnego obiektu: Kod $(this.menu).getElements("a").addEvent("click", function(e){ e.stop(); alert(this.menu); }.bind(this)); Jednak jak sprawić abym miał dostęp do obu rzeczy na raz? Z góry dzięki za pomoc, pion PS: może źle do tego podchodzę - w razie czego proszę o podsunięcie innego pomysłu. PS2: Wcięcia szlag trafił? Ten post edytował phpion 7.01.2009, 19:56:53 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 274 Pomógł: 54 Dołączył: 2.05.2006 Skąd: Nadarzyn Ostrzeżenie: (0%) ![]() ![]() |
zrób sobie może w metodzie initialize
Kod var $this = this; bedzie ona dla kazdego Tabs przechowywała to co trzeba ![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Nie bardzo rozumiem... co ma to dać? Kwestia jest taka, że chcę mieć dostęp zarówno do konkretnego obiektu klasy Tabs oraz równocześnie do obiektu <a>, który został kliknięty. Nie bardzo wiem jak zastosować to, o czym piszesz (i co to da).
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 274 Pomógł: 54 Dołączył: 2.05.2006 Skąd: Nadarzyn Ostrzeżenie: (0%) ![]() ![]() |
No dobra to może przykład będzie bardziej obrazowy
![]()
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Dzięki! Faktycznie wprowadzenie lokalnej zmiennej rozwiązało sprawę. Jeszcze raz dzięki!
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 11:36 |