2013-07-23 17 views
5

Obecnie używam jQuery 1.7.2. Dodałem element rozwijany jQuery.UI do mojej aplikacji, ale pojawia się błąd, gdy próbuję go zamknąć.Dodawanie funkcji addBack do wersji jQuery 1.7.2

Object has no method addBack 

Znalazłem odpowiedź tutaj: jsTree Object has no method addBack

Okazuje się, że metoda addBack nie było dodawane aż v1.8. Nie mogę zaktualizować do wersji 1.8 z kilku powodów, więc czy jest możliwe dodanie funkcji addBack do wersji 1.7.2?

myślę, że to jest właściwa funkcja addBack:

addBack: function(selector) { 
       return this.add(selector == null ? 
       this.prevObject : this.prevObject.filter(selector) 
      ); 
    } 

Wszelkie porady lub pomoc będzie bardzo mile widziane.

+0

Dlaczego nie uaktualnienie wersji jQuery? A może po prostu użyć metody andSelf()? –

+0

Cały nasz system musi zostać zaktualizowany, a to zajmie bardzo dużo czasu. Co to jest metoda andSelf()? – Daft

+0

andSelf() to ta sama metoda co addBack(), teraz jest już przestarzała. –

Odpowiedz

18

Aby przedłużyć metod jquery:

$.fn.addBack = function (selector) { 
    return this.add(selector == null ? this.prevObject : this.prevObject.filter(selector)); 
} 

Albo lepiej:

jQuery.fn.addBack = jQuery.fn.andSelf; 
+0

Dzięki! Czy powinienem umieścić to gdziekolwiek w szczególności? Może na dnie biblioteki? – Daft

+0

Po załadowaniu biblioteki jquery i przed użyciem tej metody –

+0

SUKCES !! Dzięki!! – Daft

Powiązane problemy