Metody hide i show w jQuery
Efekty pozwalają animować element,
na przykład - płynnie go ukryć lub pokazać. Dla
każdego efektu istnieją swoje
metody jQuery. Zacznijmy od metod
hide i
show.
Metody hide i show pozwalają
ukrywać i pokazywać elementy. Przeanalizujmy ich działanie.
Na początek weźmy następujący kod HTML:
<button id="hide">hide</button>
<button id="show">show</button>
<div id="elem">text...</div>
Kod CSS wygląda tak:
#elem {
padding: 10px;
width: 150px;
height: 150px;
border: 1px solid green;
margin-top: 10px;
}
Teraz napiszmy kod Javascript, zgodnie z którym
po naciśnięciu przycisku #hide
element będzie ukrywany, a po naciśnięciu
#show - pokazywany:
$('#hide').click(function() {
$('#elem').hide();
});
$('#show').click(function() {
$('#elem').show();
});
Można ustawiać czas trwania efektu w
milisekundach (1000 milisekund = 1 sekunda).
W tym przypadku efekt będzie płynnie odtwarzany
przez podany czas. Ustawmy
czas trwania efektu na 1 sekundę
i zobaczmy, jak zmieni się efekt:
$('#hide').click(function() {
$('#elem').hide(1000);
});
$('#show').click(function() {
$('#elem').show(1000);
});
Dany jest układ:
<p>
<a id="hide" href="">hide</a> <a id="show" href="">show</a>
</p>
<div id="block">
<ol>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
</ol>
</div>
body {
font-size: 18px;
}
a {
color: blue;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
ol {
margin: 0px;
padding-left: 10px;
}
li {
list-style-type: inside;
}
div {
display: inline-block;
padding: 30px;
border: 1px solid black;
cursor: pointer;
margin-bottom: 20px;
}
Spraw, aby po kliknięciu w link z
#hide div zawierający listę ukrywał się, a po
kliknięciu w link z #show pokazywał się. Dla każdego
efektu ustaw czas trwania na 600ms.