Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [jQuery] Dodawanie metod do istniejącej instancji
starach
post
Post #1





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

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


Cześć,

Załóżmy że mam listę <ul id="lista"> i podczepiony do niej obiekt jQ. $('ul#lista'). Czy możliwe jest dodanie metod do wyłącznie tej instancji obiektu jQuery czy muszę albo w standardowy sposób utworzyć nowy plugin do jQ albo utworzyć klasę adaptera która będzie agregowała obiekt jQuery i implementowała potrzebne mi metody?
Go to the top of the page
+Quote Post
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Niby jest możliwe: http://jsfiddle.net/27t3y/ (niewykonanie się drugiego aletra spowodowane jest błędem - brakiem funkcji doSth dla obiektu) ale nie powinieneś robić czegoś takiego. Opcja z adapterem jest znaczenie lepsza.
Go to the top of the page
+Quote Post
starach
post
Post #3





Grupa: Zarejestrowani
Postów: 999
Pomógł: 30
Dołączył: 14.01.2007
Skąd: wiesz ?

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


Tak też sobie właśnie pomyślałem i zabrałem się za implementacje, ale natknąłem się na pewien problem. Mianowicie jak utworzyć tą klasę z zewnątrz żeby można było ją przekazać do pluginu jako parametr?

Kod
(function($)
{
  function MyClass($jQ_HTML)
  {

  }
  $.fn.MyPlugin = function($MyClass)
  {
    
  }

})(jQuery);


Umieszczenie definicji klasy w zasięgu globalnym jest niezgodne z zasadami, więc pozostaje utworzenie jakiejś funkcji która będzie tworzyć obiekt MyClass. Chciałem utworzyć statyczną metodę $.fn.MyPlugin.createMyClassInstance() ale zda się że tak nie można. :/ Jakieś rady albo pomysły?
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: 23.08.2025 - 01:37