π Π£ΡΠΎΠΊ 8: ΠΠ½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΈ ΡΡΡΠ΅ΠΊΡΡ Π² jQuery β `fadeIn()`, `slideToggle()`, `animate()` ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ
- πΉ ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
- πΈ ΠΡΡΠΏΠΏΡ ΡΡΡΠ΅ΠΊΡΠΎΠ²
- πΈ fadeIn(), fadeOut(), fadeToggle()
- πΈ slideDown(), slideUp(), slideToggle()
- πΈ animate() — ΠΊΠ°ΡΡΠΎΠΌΠ½Π°Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ
- πΈ Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ»Π±ΡΠΊΠΎΠ²
- πΈ ΠΡΠ΅ΡΠ΅Π΄ΠΈ ΠΈ ΡΠ΅ΠΏΠΎΡΠΊΠΈ
- πΈ ΠΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ
- πΈ ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ
- 1. ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΡΠΎΡΡΠ° Π±Π»ΠΎΠΊΠ°
- 2. ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ Ρ Π·Π°ΡΡΡ Π°Π½ΠΈΠ΅ΠΌ
- πΈ ΠΡΠΈΠΌΠ΅ΡΡ Ρ hover
- π ΠΡΠ°ΠΊΡΠΈΠΊΠ°
- β Π§Π°ΡΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ
- β ΠΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ animate()
- β ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ Π½Π΅ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°
- β ΠΠ΅Π»ΡΠ·Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΈΠΏΠ° color (Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ jQuery)
- π ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π¦Π΅Π»Ρ: Π½Π°ΡΡΠΈΡΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ jQuery-ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΠ»Π°Π²Π½ΡΠ΅ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ, ΠΈΡΡΠ΅Π·Π½ΠΎΠ²Π΅Π½ΠΈΡ, Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΎΠ² ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ — Π²ΡΡ ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠΈΡΡΠ½Π΅Π΅ ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ½Π΅Π΅.
πΉ ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠ½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ «ΠΎΠΆΠΈΠ²ΠΈΡΡ» ΡΠ°ΠΉΡ. jQuery ΠΏΡΠ΅Π΄Π»Π°Π³Π°Π΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΡΠ΅ΠΊΡΡ ΠΊ HTML-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ Π±Π΅Π· CSS-Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ ΠΈΠ»ΠΈ JavaScript-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ².
Π‘ΡΠ΅Π΄ΠΈ ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ²:
-
ΠΏΠ»Π°Π²Π½ΠΎΠ΅ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅/ΠΈΡΡΠ΅Π·Π½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²,
-
ΡΠ°ΡΠΊΡΡΡΠΈΠ΅/ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠΎΠ²,
-
ΠΏΠ»Π°Π²Π½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ², ΠΎΡΡΡΡΠΏΠΎΠ², ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΠΈ ΠΈ Π΄ΡΡΠ³ΠΈΡ CSS-ΡΠ²ΠΎΠΉΡΡΠ².
πΈ ΠΡΡΠΏΠΏΡ ΡΡΡΠ΅ΠΊΡΠΎΠ²
ΠΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ:
-
show()
/hide()
/toggle()
-
fadeIn()
/fadeOut()
/fadeToggle()
/fadeTo()
-
slideDown()
/slideUp()
/slideToggle()
Π£Π½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄:
animate()
— Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ²ΠΎΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ
πΈ fadeIn()
, fadeOut()
, fadeToggle()
Π Π°Π±ΠΎΡΠ°ΡΡ Ρ ΠΏΡΠΎΠ·ΡΠ°ΡΠ½ΠΎΡΡΡΡ (opacity), ΠΏΠ»Π°Π²Π½ΠΎ ΠΏΠΎΡΠ²Π»ΡΡ ΠΈΠ»ΠΈ ΡΠΊΡΡΠ²Π°Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ.
$('#box').fadeIn(1000); // ΠΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ Π·Π° 1 ΡΠ΅ΠΊΡΠ½Π΄Ρ
$('#box').fadeOut(500); // ΠΡΡΠ΅Π·Π½ΠΎΠ²Π΅Π½ΠΈΠ΅ Π·Π° 0.5 ΡΠ΅ΠΊΡΠ½Π΄Ρ
$('#box').fadeToggle(); // ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ
ΠΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π² ΠΌΠΈΠ»Π»ΠΈΡΠ΅ΠΊΡΠ½Π΄Π°Ρ
, ΠΈΠ»ΠΈ ΡΡΡΠΎΠΊΠΎΠΉ: 'slow'
, 'fast'
.
π ΠΡΠΈΠΌΠ΅Ρ:
<button id="fadeBtn">ΠΠΎΠΊΠ°Π·Π°ΡΡ/ΡΠΊΡΡΡΡ</button>
<div id="fadeBox" style="display:none; background:#ccc; padding:20px;">
ΠΠ»ΠΎΠΊ Ρ fade ΡΡΡΠ΅ΠΊΡΠΎΠΌ
</div>
<script>
$('#fadeBtn').click(function() {
$('#fadeBox').fadeToggle(500);
});
</script>
πΈ slideDown()
, slideUp()
, slideToggle()
ΠΠ·ΠΌΠ΅Π½ΡΡΡ Π²ΡΡΠΎΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΡΡΡΠ΅ΠΊΡ ΡΠ°ΡΠΊΡΡΡΠΈΡ/ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΡ:
$('#panel').slideDown();
$('#panel').slideUp();
$('#panel').slideToggle(400);
π ΠΡΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ ΠΊ ΡΠΊΡΡΡΡΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ Ρ display: none
.
π ΠΡΠΈΠΌΠ΅Ρ:
<button id="slideBtn">ΠΠΎΠΊΠ°Π·Π°ΡΡ ΠΌΠ΅Π½Ρ</button>
<ul id="menu" style="display:none;">
<li>ΠΡΠ½ΠΊΡ 1</li>
<li>ΠΡΠ½ΠΊΡ 2</li>
</ul>
<script>
$('#slideBtn').click(function() {
$('#menu').slideToggle();
});
</script>
πΈ animate()
— ΠΊΠ°ΡΡΠΎΠΌΠ½Π°Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ
ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ Π»ΡΠ±ΠΎΠΉ ΡΠΈΡΠ»ΠΎΠ²ΠΎΠΉ ΡΡΠΈΠ»Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
-
width
-
height
-
opacity
-
margin
-
padding
-
top
,left
(Π΅ΡΠ»ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½)
$('#box').animate({
width: '300px',
height: '150px',
opacity: 0.5
}, 1000);
π ΠΡΠΈΠΌΠ΅Ρ: Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π±Π»ΠΎΠΊΠ°
<div id="moveBox" style="width:50px; height:50px; background:red; position:relative;"></div>
<button id="moveBtn">ΠΠ²ΠΈΠ³Π°ΡΡ</button>
<script>
$('#moveBtn').click(function() {
$('#moveBox').animate({ left: '+=100px' }, 600);
});
</script>
πΈ Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ»Π±ΡΠΊΠΎΠ²
ΠΡΠ±ΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠ»Π±ΡΠΊΠΎΠΌ — ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠ·ΠΎΠ²Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ:
$('#box').fadeOut(500, function() {
alert('Π‘ΠΊΡΡΡ!');
});
πΈ ΠΡΠ΅ΡΠ΅Π΄ΠΈ ΠΈ ΡΠ΅ΠΏΠΎΡΠΊΠΈ
ΠΠ½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡΡΡΠ°ΠΈΠ²Π°ΡΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΡ:
$('#box')
.fadeOut(500)
.fadeIn(500)
.slideUp(500)
.slideDown(500);
πΈ ΠΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ
ΠΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΊΠ»ΠΈΠΊΠ°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π· ΠΏΠΎΠ΄ΡΡΠ΄, Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΌΠΎΠ³ΡΡ Π½Π°ΡΠ»Π°ΠΈΠ²Π°ΡΡΡΡ. Π§ΡΠΎΠ±Ρ ΡΡΠΎΠ³ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ — ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅:
$('#box').stop(true, true).slideToggle();
-
ΠΠ΅ΡΠ²ΡΠΉ
true
: ΠΎΡΠΈΡΠ°Π΅Ρ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, -
ΠΡΠΎΡΠΎΠΉ
true
: Π·Π°Π²Π΅ΡΡΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ.
πΈ ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ
1. ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΡΠΎΡΡΠ° Π±Π»ΠΎΠΊΠ°
$('#grow').click(function() {
$('#block').animate({ width: '+=50px', height: '+=20px' }, 300);
});
2. ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ Ρ Π·Π°ΡΡΡ Π°Π½ΠΈΠ΅ΠΌ
$('#open').click(function() {
$('#modal').fadeTo(400, 1);
});
$('#close').click(function() {
$('#modal').fadeTo(400, 0);
});
πΈ ΠΡΠΈΠΌΠ΅ΡΡ Ρ hover
ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΠΏΠΎ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡ:
$('.card').hover(
function() {
$(this).animate({ marginTop: '-10px' }, 200);
},
function() {
$(this).animate({ marginTop: '0px' }, 200);
}
);
π ΠΡΠ°ΠΊΡΠΈΠΊΠ°
-
Π‘Π΄Π΅Π»Π°ΠΉ Π±Π»ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈ ΠΊΠ»ΠΈΠΊΠ΅ «ΡΠ°ΡΡΡΡ» Π² 2 ΡΠ°Π·Π°.
-
Π‘ΠΎΠ·Π΄Π°ΠΉ ΡΠΊΡΡΡΡΠΉ ΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠ»Π°Π²Π½ΠΎ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈ ΠΈΡΡΠ΅Π·Π°Π΅Ρ.
-
ΠΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡ — ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ.
-
Π Π΅Π°Π»ΠΈΠ·ΡΠΉ Π°ΠΊΠΊΠΎΡΠ΄Π΅ΠΎΠ½: ΠΏΡΠΈ ΠΊΠ»ΠΈΠΊΠ΅ Π½Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ — ΠΎΡΠΊΡΡΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΡ.
-
Π‘Π΄Π΅Π»Π°ΠΉ ΠΌΠΎΠ΄Π°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠ»Π°Π²Π½ΠΎ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅.
β Π§Π°ΡΡΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ
β ΠΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ
animate()
β
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉ .stop()
Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ:
$('#box').stop().animate(...);
β ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ Π½Π΅ΠΏΠΎΠ·ΠΈΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΠ°
β
ΠΠ»Ρ left
, top
ΡΠΊΠ°ΠΆΠΈ position: relative
ΠΈΠ»ΠΈ absolute
.
β ΠΠ΅Π»ΡΠ·Ρ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉΡΡΠ²Π° ΡΠΈΠΏΠ° color
(Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΉ jQuery)
β ΠΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ jQuery UI ΠΈΠ»ΠΈ CSS-ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ²ΠΎΠΉΡΡΠ².
π ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠ½ΠΈΠΌΠ°ΡΠΈΠΈ Π² jQuery — ΡΡΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΡ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ. ΠΠ°ΠΆΠ΅ Π±Π΅Π· CSS ΠΈΠ»ΠΈ ΡΠ»ΠΎΠΆΠ½ΡΡ JavaScript-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΡ ΠΌΠΎΠΆΠ΅ΡΡ ΠΎΠΆΠΈΠ²ΠΈΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π²ΡΠ΅Π³ΠΎ Π² ΠΏΠ°ΡΡ ΡΡΡΠΎΠΊ.