Jak mogę wybrać klasę z tego obiektu this
?Jquery wybierz tę + klasę
$(".class").click(function(){
$("this .subclass").css("visibility","visible");
})
Chcę wybrać $(this+".subclass")
. Jak mogę to zrobić z Jquery?
Jak mogę wybrać klasę z tego obiektu this
?Jquery wybierz tę + klasę
$(".class").click(function(){
$("this .subclass").css("visibility","visible");
})
Chcę wybrać $(this+".subclass")
. Jak mogę to zrobić z Jquery?
Zastosowanie $(this).find()
lub przekazać to w kontekście jQuery context with selector.
Korzystanie $ (this) .find()
$(".subclass").click(function(){
$(this).find(".subclass").css("visibility","visible");
});
Korzystanie this
w kontekście $(selector, context)
będzie wewnętrznie wywołać funkcję znaleźć, więc lepiej używać znaleźć się na pierwszym miejscu.
$(".subclass", this).click(function(){
$(this).find(".subclass").css("visibility","visible");
});
Co szukasz to:
$(".subclass", this).css("visibility","visible");
Dodaj this
po klasie $(".subclass", this)
To bardzo mi pomogło, gdy próbowałem ożywić SVG i coś poszło nie tak, jak tego potrzebowałem. – Xander
jeśli potrzebujesz wydajności wykorzystania sztuczka poniżej:
$(".yourclass", this);
Metoda find() przeszukuje za każdym razem w selektorze.
Cóż za pomocą znaleźć jest najlepszym rozwiązaniem tutaj
po prostu używać jak to
$(".class").click(function(){
$("this").find('.subclass').css("visibility","visible");
})
a jeśli istnieje wiele klas z tej samej klasy i nazwisko jej zawsze lepiej podać nazwę klasy klasa rodzicielska taka jak ta
$(".parent .class").click(function(){
$("this").find('.subclass').css("visibility","visible");
})
Jeśli funkcja 'find()' jest wywoływana wewnętrznie w drugiej metodzie, dlaczego wciąż wywołujesz ją ręcznie? – shaneparsons