Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] Dodawanie metod do istniejącej instancji
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
starach
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?
Crozin
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.
starach
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?
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.