W jQuery istnieją .hide()
i .show()
metody, które ustawiają display: none
ustawienie CSS .
Czy istnieje równoważna funkcja, która ustawiłaby visibility: hidden
ustawienie?
Wiem, że mogę używać, .css()
ale wolę jakąś taką funkcję .hide()
. Dzięki.
.toggle()
Odpowiedzi:
Możesz tworzyć własne wtyczki.
Jeśli chcesz przeładować oryginalną wersję jQuery
toggle()
, której nie polecam ...jsFiddle .
źródło
toggle()
który mógłby złamać inne skrypty. Jeśli chcesz, możesz dodać dodatkowy argument, abytoggle()
określić, czyvisibility
lubdisplay
powinna być przełączana. Chciałbym jednak użyć niestandardowego w moim ostatnim przykładzie. :)show
(prędkość, łagodzenie, oddzwanianie)?(function() { })()
podobnym skryptem , ASI nie uruchomi się, ponieważ wygląda jak wywołanie funkcji. Spróbuj tego , a następnie usuń!
.Nie ma jednego wbudowanego, ale możesz łatwo napisać własny:
Następnie możesz to tak nazwać:
Oto działający przykład .
źródło
(function($) {...}(jQuery));
opakowanie? Nigdy wcześniej nie definiowałem własnych funkcji w jQuery, zawsze tylko definiowałem funkcje w prostym JavaScript.$
identyfikatora wewnątrz funkcji, nawet jeśli odnosi się do czegoś innego w zakresie nadrzędnym.Jeszcze prostszym sposobem na to jest użycie metody toggleClass () jQuery'ego
CSS
HTML
JS
źródło
Jeśli potrzebujesz tylko standardowej funkcjonalności hide tylko z widocznością: ukryty, aby zachować obecny układ, możesz użyć funkcji wywołania ukrytego, aby zmienić css w znaczniku. Ukryj dokumenty w jquery
Przykład :
Spowoduje to użycie normalnej fajnej animacji do ukrycia div, ale po zakończeniu animacji ustawisz widoczność na ukrytą, a wyświetlanie na blok.
Przykład : http://jsfiddle.net/bTkKG/1/
Wiem, że nie chciałeś rozwiązania $ ("# aa"). Css (), ale nie określiłeś, czy jest tak, ponieważ używając tylko metody css () tracisz animację.
źródło
Oto jedna implementacja, która działa jak
$.prop(name[,value])
lub$.attr(name[,value])
działa. Jeślib
zmienna jest wypełniona, widoczność jest ustawiana zgodnie z tym ithis
jest zwracana (pozwalając kontynuować z innymi właściwościami), w przeciwnym razie zwraca wartość widoczności.Przykład:
źródło
Odpowiednik czystego JS dla jQuery hide () / show ():
Używamy
return el
ze względu na płynny interfejs „wzorca projektowego”.Oto działający przykład .
Poniżej podaję również WYSOKIE NIE polecaną alternatywę, która jednak jest prawdopodobnie bardziej „zbliżona do pytania” odpowiedź:
oczywiście nie implementuje jQuery 'each' (podany w @JamesAllardice odpowiedzi ), ponieważ używamy tutaj czystego js.
Przykładem roboczym jest tutaj .
źródło