ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ JavaScript ΠΈ CSS ΡΠ΅ΠΊΡΡΡΡΡ ΠΈ ΡΠ·ΠΎΡΡ
ΠΡ Π°Π²ΡΠΎΡΠ°: ΡΠ΅ΠΊΡΡΡΡΡ ΠΈ ΡΠ·ΠΎΡΡ ΡΠΆΠ΅ Π΄Π°Π²Π½ΠΎ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΡΡΡΡ Π²Π΅Π±-Π΄ΠΈΠ·Π°ΠΉΠ½Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΎΠ½Π° ΠΈΠ»ΠΈ Π΄Π»Ρ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°, ΠΎΠ½ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π·Π°Π΄Π°ΡΡ ΡΠΎΠ½ Π½Π°ΡΠΈΡ ΡΠ°Π±ΠΎΡ.
ΠΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡΠΈΠΌΡΡ Π²Π΅Π±-ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠΌ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ JavaScript ΠΈ CSS ΡΠ΅ΠΊΡΡΡΡΡ ΠΈ ΡΠ·ΠΎΡΡ ΠΏΠΎ-Π½ΠΎΠ²ΠΎΠΌΡ. ΠΠ½ΠΈ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ. Π’Π΅ΠΏΠ΅ΡΡ ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ Ρ ΡΠ΅Ρ Π½ΠΈΠΊΠ°ΠΌΠΈ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΡΠ΅Π½Π΅Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΌΠΎΠΏΠΎΠΌΡΠ°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΡ ΡΠΎΠ±ΡΠ°Π»ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ Π²Π΅ΡΡΠΌΠ° ΠΊΡΠ΅Π°ΡΠΈΠ²Π½ΡΡ ΡΠ½ΠΈΠΏΠΏΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎ-Π½ΠΎΠ²ΠΎΠΌΡ ΠΈ Π²Π΅ΡΡΠΌΠ° Π·Π°Ρ Π²Π°ΡΡΠ²Π°ΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ. ΠΠ°ΡΠ»Π°ΠΆΠ΄Π°ΠΉΡΠ΅ΡΡ, ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ Π²Π·Π΄ΡΠΌΠ°ΠΉΡΠ΅ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΌΠΈΠ½ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ°! ΠΠ°ΡΠΈ Π³Π»Π°Π·Π° ΠΌΠΎΠ³ΡΡ ΡΡΠ³ΡΠ°ΡΡ Ρ Π²Π°ΠΌΠΈ Π·Π»ΡΡ ΡΡΡΠΊΡ.
ΠΠΎΠ»ΡΡΠΎΠΉ ΡΠΎΡ, ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠΉ ΠΊΠΎΠ΄
ΠΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ ΡΠΎΡΠ° β ΡΡΠΎ Π·Π°Ρ Π²Π°ΡΡΠ²Π°ΡΡΠΈΠΉ ΠΊΠΎΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΊΡΡΠ³ΠΎΠ²ΠΎΡΠΎΡ. ΠΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΡΡΡΠ°ΡΡΠΈΠΉ. ΠΠ½ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ Π»ΡΡΡΠ΅, ΡΠ΅ΠΌ ΠΊΡΠΎ-Π»ΠΈΠ±ΠΎ ΠΌΠΎΠ³ Π±Ρ Π΅Π΅ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ. ΠΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ, ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ 33 ΡΡΡΠΎΠΊΠΈ JavaScript. Π£ Π²Π°Ρ ΠΌΠΎΠΆΠ΅Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° Π½Π΅Π³ΠΎ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠ°ΡΠΎΠ².
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΡΡΡ ΠΏΠΎ Π²Π΅ΡΡΡΠΊΠ΅ Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° Ρ Π½ΡΠ»Ρ!
ΠΠ·ΡΡΠΈΡΠ΅ ΠΊΡΡΡ ΠΈ ΡΠ·Π½Π°ΠΉΡΠ΅, ΠΊΠ°ΠΊ Π²Π΅ΡΡΡΠ°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΡΡ Π½Π° HTML5 ΠΈ CSS3
Π£Π·Π½Π°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ΠΡΠΎ ΡΡΠΎ, ΡΠ°ΡΠΊΠ° ΠΠ΅ΡΡΠΈ?
ΠΠΎΠΌΠΈΠΌΠΎ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎΠΉ Π΄Π΅ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠΎΠΉ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ, ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π² ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΠΌΠΈΡΠ΅. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ, ΡΠΊΠ°ΠΆΠ΅ΠΌ, Π΄Π»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΠ°ΡΡΡΡ Π±Π°ΠΊΡΠ΅ΡΠΈΠΈ ΠΈΠ»ΠΈ Π²ΠΎΡΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠ°Π½ΡΠΈΠ»ΠΈΡΡΡΠΊΠΎΠΉ ΠΆΠΈΠ²ΠΎΠΏΠΈΡΠΈ. Π ΡΡΠΎ Π²ΡΠ΅ Π΅ΡΠ΅ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π·Π°Π²ΠΎΡΠ°ΠΆΠΈΠ²Π°ΡΡΠ΅ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ.
ΠΠΎΡΠ½ΡΠ΅ ΠΎΠ³Π½ΠΈ
Π’Π΅ΠΊΡΡΡΡΡ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΡΠΎΠ½ΠΎΠ². Π ΡΡΠΎ Π½ΠΎΡΠ½ΠΎΠ΅ Π½Π΅Π±ΠΎ, ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡΠ²Π΅ΡΡΡΠΈΡ ΡΡ (ΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΠΏΡΠΎΠ»Π΅ΡΠ°ΡΡΠΈΡ ) Π·Π²Π΅Π·Π΄, ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΡΡΡΠ΅ΠΊΡΡ ΡΠΎΠ½ΠΎΠ² Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΠΎ-ΡΠΎ, ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΎΡΠ»ΠΈΡΠ½ΠΎ ΡΠΌΠΎΡΡΠΈΡΡΡ.
ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ Π΄ΠΈΡΠΊΠΎ-ΡΠ°Ρ
ΠΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ. ΠΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Three.js Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ²Π΅ΡΡ Π½ΠΎΡΡΠΈ Π΄ΠΈΡΠΊΠΎ-ΡΠ°ΡΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΡΡΡΠΎΡΠ°. ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²Π²Π΅ΡΡ ΠΈ Π²Π½ΠΈΠ· ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΡ, Π² ΡΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠ°ΠΊ Π±ΠΎΠΊΠΎΠ²ΠΎΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Β«ΡΠ΅Π·ΠΊΠΎΡΡΡΒ» ΡΠ΅ΠΊΡΡΡΡΡ.
ΠΡΡΠ°ΡΡΠΈ Π΄Π΅ΡΠ΅Π²ΠΎ
ΠΠ΄Π΅ΡΡ Ρ Π½Π°Ρ Π΅ΡΡΡ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ Π΄Π΅ΡΠ΅Π²ΠΎ, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡΡΠ΅Π΅ ΡΡΡΠ½ΠΎΠΉ ΡΠ»ΠΈΠΏΠ±ΡΠΊ. ΠΠ΅ΡΠ΅Π²ΠΎ ΠΏΡΠΎΡΠ°ΡΡΠ°Π΅Ρ ΠΈ Π½Π° Π½Π΅ΠΌ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ Π»ΠΈΡΡΡΡ. ΠΡΠ΅ Π»ΡΡΡΠ΅ ΡΠΎ, ΡΡΠΎ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ HTML5 Canvas ΠΈ JavaScript β Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ.
ΠΡΠΎ ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΎΡΠ΅ΠΊ
Π‘Π½Π°ΡΠ°Π»Π° ΡΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΡΠΈΠ½ΡΡΡ Π·Π° ΠΊΠ°Π΄ΡΡ ΠΊΠΎΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ±ΡΡΠΈΡ. ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΡΡΠΎ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ WebGL2 Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ΅Π°ΠΊΡΠΈΠ²Π½ΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠΉ ΡΠ°ΡΡΠΈΡ. ΠΠ΄Π΅ΡΡ 500 000 ΡΠ²Π΅ΡΠ½ΡΡ ΡΠ°ΡΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π³ΠΈΡΡΡΡ Π½Π° Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΊΡΡΡΠΎΡΠ°. ΠΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π² ΠΊΠΎΡΠΌΠΎΡΠ΅, Π½Π°ΠΌ Π»ΡΡΡΠ΅ ΡΡΠΎΠ³ΠΎ Π½Π΅ Π²ΠΈΠ΄Π΅ΡΡ.
ΠΠΎΠ·Π²ΡΠ°Ρ ΠΊ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΠΊΠ΅
ΠΠ°Π²Π°ΠΉΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ Π΄Π°ΠΆΠ΅ ΠΏΡΡΠ°ΡΡΡΡ ΠΎΠ±ΡΡΡΠ½ΠΈΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ Π»ΠΎΠ³Π°ΡΠΈΡΠΌΠ°. ΠΡΠΎΡΡΠΎ Π·Π½Π°ΠΉΡΠ΅, ΡΡΠΎ Π² Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ ΡΠΎΡΠΌΠ΅ ΡΡΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΊΡΡΡΠΎ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ. ΠΡΠ°ΡΠΎΡΠ½Π°Ρ ΡΠ΅ΠΊΡΡΡΡΠ°, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠ°Ρ ΡΠΎΡΠΌΡ, Π΄Π°Π΅Ρ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΡΠ΅ΡΡΠΎ-ΡΡΡΠ΅ΠΊΡ. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π±ΠΎΠ½ΡΡΠ° ΠΊΠ»ΠΈΠΊ Π½Π° Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΡΡΠ΅ΠΊΡ.
ΠΡΠΈΠ²Π΅Ρ, ΡΠΎΠ»Π½ΡΠ΅
ΠΡΠ»ΠΈ ΡΡΠΎ Π½Π΅ Π²ΡΠ·ΡΠ²Π°Π΅Ρ Ρ Π²Π°Ρ Π½Π° Π»ΠΈΡΠ΅ ΡΠ»ΡΠ±ΠΊΠΈ, ΡΠΎ Π²Π°ΠΌ Π»ΡΡΡΠ΅ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡΡΡ Ρ ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π²ΡΡΠ΅. Π‘ Π²ΡΠ°ΡΠ°ΡΡΠΈΠΌΠΈΡΡ ΡΠΈΠ³ΡΡΠ°ΠΌΠΈ, ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΠΌΠΈ ΠΏΠΎΠ²Π΅ΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΌΠ΅Π½ΡΡΡΠ΅Π³ΠΎΡΡ ΡΠΎΠ½Π°, Π·Π΄Π΅ΡΡ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ. Π₯ΠΎΡΡ, Π²Π΅ΡΠΎΡΡΠ½ΠΎ, ΡΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ ΡΠΎΠ½Π° ΡΡΡΠ°Π½ΠΈΡΡ, ΡΡΠΎ, Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅Ρ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊ ΠΎΠ±Π»Π°ΡΡΠΈ Π±Π°Π½Π½Π΅ΡΠ°.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π²ΡΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ Π²Π·ΡΠ»ΠΈ ΡΡΠΎ-ΡΠΎ ΠΏΡΠΎΡΡΠΎΠ΅ (ΡΠΈΠ³ΡΡΠ°, ΡΠ·ΠΎΡ ΠΈ Ρ. Π΄.) Π ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΠ»ΠΈ Π΅Π³ΠΎ Π²ΠΎ ΡΡΠΎ-ΡΠΎ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΎΠ΅. ΠΡΠΈ ΡΠ½ΠΈΠΏΠΏΠ΅ΡΡ ΠΎΡΠ΅Π½Ρ ΠΊΡΠ°ΡΠΎΡΠ½ΡΠ΅, ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ ΠΈ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΡΠ΅. ΠΠ½ΠΈ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ, ΡΠ΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡΡΠΈΡΡ ΠΏΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΌ ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠ΅ Π½Π°Π²ΡΠΊΠΎΠ² ΠΈ ΠΊΡΠ΅Π°ΡΠΈΠ²Π½ΠΎΡΡΠΈ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ²ΡΠΎΡ: Eric Karkovack
ΠΡΡΠΎΡΠ½ΠΈΠΊ: https://speckyboy.com/
Π Π΅Π΄Π°ΠΊΡΠΈΡ: ΠΠΎΠΌΠ°Π½Π΄Π° webformyself.
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΊΡΡΡ ΠΏΠΎ Π²Π΅ΡΡΡΠΊΠ΅ Π°Π΄Π°ΠΏΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ° Ρ Π½ΡΠ»Ρ!
ΠΠ·ΡΡΠΈΡΠ΅ ΠΊΡΡΡ ΠΈ ΡΠ·Π½Π°ΠΉΡΠ΅, ΠΊΠ°ΠΊ Π²Π΅ΡΡΡΠ°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠ°ΠΉΡΡ Π½Π° HTML5 ΠΈ CSS3
Π£Π·Π½Π°ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅PSD to HTML
ΠΡΠ°ΠΊΡΠΈΠΊΠ° Π²Π΅ΡΡΡΠΊΠΈ ΡΠ°ΠΉΡΠ° Π½Π° CSS Grid Ρ Π½ΡΠ»Ρ
Π‘ΠΌΠΎΡΡΠ΅ΡΡ14 JavaScript Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ / jQuery ΠΏΠ»Π°Π³ΠΈΠ½Ρ ΠΈ JavaScript ΡΠ΅ΡΠ΅Π½ΠΈΡ / ΠΠΎΡΡΠΎΠ²ΠΎΠΉ
ΠΠΎΠ΄ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠΌ Β«Π°Π½ΠΈΠΌΠ°ΡΠΈΡΒ» ΠΌΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅ΠΌ ΠΌΡΠ»ΡΡΠΈΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΡΠΈΠ»ΡΠΌΡ β Ρ Π΄Π΅ΡΡΡΠ²Π° Π»ΡΠ±ΠΈΠΌΡΠ΅ Π½Π°ΠΌΠΈ Β«ΠΌΡΠ»ΡΡΠΈΠΊΠΈΒ». ΠΠΎ Π΅ΡΠ»ΠΈ Π·Π°Π³Π»ΡΠ½ΡΡΡ Π² ΡΠΎΠ»ΠΊΠΎΠ²ΡΠΉ ΡΠ»ΠΎΠ²Π°ΡΡ, ΡΠΎ ΠΌΡ ΡΠ·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π² ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π΅ Ρ ΡΡΠ°Π½ΡΡΠ·ΡΠΊΠΎΠ³ΠΎ ΠΎΠ½ΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ Β«ΠΎΠΆΠΈΠ²Π»Π΅Π½ΠΈΠ΅Β», Β«ΠΎΠ΄ΡΡΠ΅Π²Π»Π΅Π½ΠΈΠ΅Β». Π Π²ΠΎΡ ΡΡΡ-ΡΠΎ ΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΊΠΈΠ½ΠΎΠΈΠ½Π΄ΡΡΡΡΠΈΠΈ, Π½ΠΎ ΠΈ ΠΊ Π²Π΅Π±-ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠΌ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ² (ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ², Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠΉ, ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΠΉ ΠΈ Ρ.ΠΏ.) Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Β«ΠΎΠΆΠΈΠ²Π»ΡΡΡΒ» Π²Π΅Π±-ΡΠ°ΠΉΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°Ρ Π΅Π³ΠΎ Π½Π° ΡΡΠ΅Π±ΡΠ΅ΠΌΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈ Π΄Π°Π²Π°Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ.
ΠΠΎΠ²ΠΎΡΡ ΠΎΠ± Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π½Π΅Π»ΡΠ·Ρ Π½Π΅ ΡΠΏΠΎΠΌΡΠ½ΡΡΡ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ 12 ΠΏΡΠΈΠ½ΡΠΈΠΏΠΎΠ², ΡΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΎΡΠ°ΠΌΠΈ ΡΡΡΠ΄ΠΈΠΈ ΠΠΈΡΠ½Π΅ΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ ΡΠ°Π·ΡΠΌΠ½ΠΎΠ³ΠΎ ΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ².
ΠΠΎΠ²ΠΎΡΡ ΠΎ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡ , ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°ΡΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π² Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΠ°Ρ , ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ΄Π΅Π»ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½ΠΎ, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· Π½ΠΈΡ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π°ΡΡΠΎΠ»ΡΠΊΠΎ ΠΌΠΎΡΠ½ΠΎΠΉ ΠΊΠ°ΠΊ JavaScript. ΠΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»Π΅Ρ Π½Π°Π·Π°Π΄ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ Flash-Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π±ΡΠ»Π° Π³ΡΠΎΠ·Π½ΡΠΌ ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠΎΠΌ ΠΈ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ. ΠΠΎ ΡΠ΅ΠΉΡΠ°Ρ, ΠΏΠΎΡ ΠΎΠΆΠ΅, Π΅Π΅ Π»ΡΡΡΠΈΠ΅ Π³ΠΎΠ΄Ρ ΠΏΠΎΠ·Π°Π΄ΠΈ ΠΈ ΠΎΠ½Π° ΠΏΠΎΡΡΠ΅ΠΏΠ΅Π½Π½ΠΎ Π²ΡΡΠ΅ΡΠ½ΡΠ΅ΡΡΡ ΡΠΎ ΡΡΡΠ°Π½ΠΈΡ ΡΠ°ΠΉΡΠΎΠ² Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡΠ½ΡΠΌΠΈ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ Java-ΡΠΊΡΠΈΠΏΡΠ°ΠΌΠΈ. Π Π΅ΡΠ»ΠΈ Π²Ρ ΡΠ΅ΡΠΈΠ»ΠΈ Π²ΡΠ΅ΡΡΠ΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ Π½Π° ΡΠ²ΠΎΠ΅ΠΌ ΡΠ°ΠΉΡΠ΅, ΡΠΎ ΡΡΠ°Π²ΠΊΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π΄Π΅Π»Π°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° JavaScript. Π ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°Π·ΡΠΌΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Ρ ΠΈ ΡΠ΄Π΅Π»Π°Π» ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ ΠΎΠ±Π·ΠΎΡ.
Π‘ΠΎΡΡΠΈΡΠ΅ ΡΠ°ΠΊΠΆΠ΅:
20 jQuery ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΏΡΠΈ ΡΠΊΡΠΎΠ»Π»ΠΈΠ½Π³Π΅
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ HTML5 Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ
10 JavaScript Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ SVG Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ
Dynamics.js
ΠΠ°ΡΠ½Ρ Ρ, ΠΏΠΎΠΆΠ°Π»ΡΠΉ, Ρ Dynamics.js. ΠΡΠΎ ΡΠ΅ΡΡΠ΅Π·Π½Π°Ρ ΠΈ ΠΌΠΎΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ (ΠΊΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π³Π°ΡΠΌΠΎΠ½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°ΡΡΡ Π°ΡΡΠΈΠ΅ ΠΊΠΎΠ»Π΅Π±Π°Π½ΠΈΡ ΡΠΎΡΠΊΠΈ Π½Π° Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΠ°ΠΉΡΠ°). ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΏΠΎΡΠΎΠ±Π½Π° ΡΠΏΡΠ°Π²Π»ΡΡΡ CSS ΠΈ SVG ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ DOM-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. Dynamics.js ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΌΠ΅Π½Ρ, ΠΊΠ½ΠΎΠΏΠΎΠΊ, ΠΈΠ½Π΄ΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΠΏΡΠΎΡΠ΅ΡΡΠ°, ΠΌΠ°ΡΠΊΠ΅ΡΠΎΠ². ΠΡΠΈ ΡΡΠΎΠΌ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΡΠ°ΠΌΡΠ΅ ΡΠ°Π·Π½ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠ°ΡΡΠΎΡΠ°, Π΄Π΅ΠΊΡΠ΅ΠΌΠ΅Π½Ρ Π·Π°ΡΡΡ Π°Π½ΠΈΡ, ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ, Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΡΡΠΈΠ΅ ΡΠΏΡΡΠ³ΠΎΡΡΡ ΠΈΠ»ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΈ Ρ.ΠΏ.Cta.js
ΠΠ΅Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΠΎ ΠΎΠ±ΡΠ΅ΠΌΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° cta.js ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ² ΡΠΈΠΏΠ° Β«Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅-ΡΡΡΠ΅ΠΊΡΒ», Ρ.Π΅. Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°ΡΠΈΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ ΠΌΡΡΠΈ Π½Π° ΠΎΠ±ΡΠ΅ΠΊΡ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΡΡΡΠ΅ΠΊΡΡ. ΠΡΠ΅Π½Ρ ΡΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΠ»ΠΈΡΠΎΡΠ½ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΆΠ°ΡΠΈΠ΅ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π΅Π³ΠΎ ΡΠ°ΡΠΊΡΡΡΠΈΡ Π² Π²ΠΈΠ΄Π΅ ΠΌΠΎΠ΄Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°, Π½Π° Π²ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ, ΠΈΠ»ΠΈ Π² Π²ΠΈΠ΄Π΅ Π±ΠΎΠΊΠΎΠ²ΠΎΠΉ ΡΠ»Π°ΠΉΠ΄-ΠΏΠ°Π½Π΅Π»ΠΈ.Beep.js
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ°Ρ WebAudio API Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΌΡΠ·ΡΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΈΠ½ΡΠ΅Π·Π°ΡΠΎΡΠ°. ΠΠΎΠΆΠ΅Ρ Π½Π°ΠΉΡΠΈ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΎΠ½Π»Π°ΠΉΠ½-ΡΡΠ΅Π±Π½ΠΈΠΊΠ° ΠΏΠΎ ΠΌΡΠ·ΡΠΊΠ΅ ΠΈΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π°Π±Π°Π²Π½ΠΎΠΉ ΠΈΠ³ΡΡΡΠΊΠΈ.Rainyday.js
ΠΠ΅Π²Π΅ΡΠΎΡΡΠ½ΠΎ ΠΊΡΠ°ΡΠΈΠ²ΡΠΉ ΡΡΡΠ΅ΠΊΡ Π΄ΠΎΠΆΠ΄Ρ Ρ ΠΊΠ°ΠΏΠ»ΡΠΌΠΈ ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΡΡΠ΅ΠΊΠ°ΡΡΠΈΠΌΠΈ Π²Π½ΠΈΠ·. ΠΡΠ°Π²Π΄Π°, Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄, ΠΊΡΡΠΏΠ½ΡΠΌ ΠΊΠ°ΠΏΠ»ΡΠΌ Π½Π΅ Ρ Π²Π°ΡΠ°Π΅Ρ ΡΠ΅Π°Π»ΠΈΡΡΠΈΡΠ½ΠΎΡΡΠΈ (ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠΉ ΡΠ°ΠΌΠΎΠΉ ΡΠΈΠ·ΠΈΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ Π² Dynamics.js?). ΠΠΏΡΠΎΡΠ΅ΠΌ, ΠΈΠΌΠ΅ΡΡΠΈΠΉΡΡ API ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡ ΠΈΡ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ, ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ Π½Π΅Π²Π΅ΡΠΎΡΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ.Iconate.js
lconate.js ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° Π² Π΄ΡΡΠ³ΠΎΠΉ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ ΠΈ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ. Π Π°Π±ΠΎΡΠ°Π΅Ρ Ρ ΠΈΠΊΠΎΠ½ΠΎΡΠ½ΡΠΌΠΈ ΡΡΠΈΡΡΠ°ΠΌΠΈ, Π³Π»ΠΈΡΠ°ΠΌΠΈ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΠΈΠΊΠΎΠ½ΠΎΠΊ.Dom-Animator.js
Dom-Animator.js β ΡΡΠΎ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ Β«ΠΏΠ°ΡΡ Π°Π»ΡΠ½ΠΎΠ΅ ΡΠΉΡΠΎΒ» (easter egg). ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡΠΉ Π΅Ρ ΡΡΡΠ΅ΠΊΡ Π½Π΅ Π²ΠΈΠ΄Π΅Π½ Β«Π½Π΅Π²ΠΎΠΎΡΡΠΆΠ΅Π½Π½ΡΠΌΒ» Π³Π»Π°Π·ΠΎΠΌ, Ρ.Π΅. ΡΠ΅ΠΌ ΠΊΡΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ ΡΡΡΠ°Π½ΠΈΡΡ Π² ΠΎΠ±ΡΡΠ½ΠΎΠΌ ΠΎΠΊΠ½Π΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ°. ΠΠΎ ΡΠ΅, ΠΊΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π±ΠΈΡΠ°ΡΡ Π²Π°Ρ ΠΊΠΎΠ΄, ΡΠ²ΠΈΠ΄ΡΡ Π΅Π΅ Π² ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ (Π΅ΡΠ»ΠΈ Π²Ρ Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π΅ ΠΏΠΎΠ½ΡΠ»ΠΈ ΠΎ ΡΠ΅ΠΌ ΡΠ΅ΡΡ, ΡΠΎ Π·Π΄Π΅ΡΡ Π΅ΡΡΡ Π²ΠΈΠ΄Π΅ΠΎΡΠΎΠ»ΠΈΠΊ, ΠΈΠ· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²ΡΠ΅ ΡΡΠ°Π½Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½ΠΎ).Famous
Famous β ΡΠΎΠ±ΡΡΠΈΠΉΠ½ΠΎ-ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ JS-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ. ΠΠΌΠ΅Π΅Ρ ΠΌΠΎΡΠ½ΠΎΠ΅ Π³Π΅ΠΎΠΌΠ΅ΡΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠ΄ΡΠΎ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ 3D ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ β ΡΠΎΡΠ΅ΡΠ½ΡΠΌΠΈ ΠΈ ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΠΌΠΈ β ΠΏΡΠΈΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΠΊ Π½ΠΈΠΌ ΡΠΈΠ»Ρ ΠΈ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ, Π½Π°ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎΡΠ΄Π°ΡΠ΅Π½ΠΈΡ.Bounce.js
ΠΠ΅ΠΏΠ»ΠΎΡ Π°Ρ JavaScript Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΠΏΠ΅ΡΠ°ΡΠ»ΡΡΡΠ΅ΠΉ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ CSS. ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²ΠΈΠ΄Ρ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ, Π²ΡΠ°ΡΠ΅Π½ΠΈΡ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ.Snabbt.js
ΠΠ΅Π³ΠΊΠ°Ρ ΠΈ Π±ΡΡΡΡΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, Π²ΡΠ΄Π°ΡΡΠ°Ρ, ΠΏΠΎ Π·Π°Π²Π΅ΡΠ΅Π½ΠΈΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², 60 fps Π΄Π°ΠΆΠ΅ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ . ΠΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΠΌΠ°ΡΡΠΈΡ ΡΡΠ°Π½ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ CSS ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡ, Π²ΡΠ°ΡΠ°ΡΡ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ. ΠΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ, ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΡΠΈΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΠΎΡΠΌ.Rekapi
Rekapi ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ CSS Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΊΠ°Π΄ΡΠΎΠ² (ΠΏΡΠ°Π²ΠΈΠ»ΠΎ @keyframes), ΡΠ°ΠΊ ΠΈ DOM Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ JavaScript. ΠΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΡΡΠ³ΠΎΠ²ΡΠ΅ ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½ΡΠ΅ Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌΡ, Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΠΊΠ°Π»Ρ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°.Shifty
Shifty β Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠΉ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΠΏΠΎ ΠΊΠ»ΡΡΠ΅Π²ΡΠΌ ΠΊΠ°Π΄ΡΠ°ΠΌ (ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Β«ΡΠ²ΠΈΠ½Π½ΠΈΠ½Π³Β»), ΠΏΡΠΈΡΠ΅ΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΡΡΠΎ ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΌ. ΠΡΠΎ Π½ΠΈΠ·ΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΡΠ΄ΡΠΎ Π΄Π»Ρ Π±ΠΎΠ»Π΅Π΅ Π²ΡΡΠΎΠΊΠΎΡΡΠΎΠ²Π½Π΅Π²ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ΄ΡΠ° Π²ΡΡΠ΅ΡΠΏΠΎΠΌΡΠ½ΡΡΠΎΠΉ Rekapi, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠ°Π· Shifty.Tween.js
Tween.js ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΠΊΠ°Π΄ΡΠΎΠ² (ΡΠ²ΠΈΠ½Π½ΠΈΠ½Π³) Π΄Π»Ρ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ HTML, JavaScript ΠΈ CSS ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ. ΠΠΎΠΆΠ½ΠΎ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΡΠΈΡΡΠΎΠ²ΡΠΌΠΈ ΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΌΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌΠΈ, Π·Π°Π΄Π°Π²Π°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΡΠΏΡΡΠ³ΠΎΡΡΡ, Π°ΠΌΠΏΠ»ΠΈΡΡΠ΄Ρ, ΡΠ°ΡΡΠΎΡΡ ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅ΡΡ.Velocity.js
ΠΡΠ΅Π½Ρ ΠΌΠΎΡΠ½Π°Ρ ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½Π°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΡΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΡΡΠ½ΠΊΡΠΈΠΉ. Π‘ΡΠ΅Π΄ΠΈ Π½ΠΈΡ ΡΠ²Π΅ΡΠΎΠ²Π°Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ, ΡΠΈΠΊΠ»ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ, ΡΠΊΡΡΡΠΈΠ²Π°Π½ΠΈΠ΅, ΠΏΡΠΎΠΊΡΡΡΠΊΠΈ ΡΡΠ΅Π½ ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ SVG ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². Velocity.js ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠ° Ρ jQuery β Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Π΅ Π½Π° ΡΡΡΠ°Π½ΠΈΡΡ ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π²ΡΠ΅ Π²ΡΠ·ΠΎΠ²Ρ $.animate() Π½Π° $.velocity(). ΠΠΎ Π·Π°Π²Π΅ΡΠ΅Π½ΠΈΡΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΏΠΎΡΠ°ΠΆΠ΅Π½Ρ ΠΏΡΠΈΡΠΎΡΡΠΎΠΌ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ.Move.js
ΠΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡΠΈΡΠ΅ΡΠΊΠ°Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°, ΠΊΠΎΡΠΎΡΠ°Ρ Π΄Π΅Π»Π°Π΅Ρ CSS-Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ ΠΈ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΠΎΠΉ. Π‘ΡΠ΅Π΄ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ² ΠΏΡΠΈΡΡΡΡΡΠ²ΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅, Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅, ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Ρ Π΄Π΅ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ, ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ²Π΅ΡΠΎΠ²ΡΡ ΡΠ²ΠΎΠΉΡΡΠ² ΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π΄ΡΡΠ³ΠΈΡ .ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
JavaScript ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎΠΉ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΏΠΎΡΠΎΠ±Π½Π° ΠΎΠΆΠΈΠ²ΠΈΡΡ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π²Π΅Π±-ΡΡΡΠ°Π½ΠΈΡΡ ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ»ΡΡΡΠΈΠ² ΠΎΠ±ΡΠΈΠΉ ΠΎΠΏΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ. ΠΠ½ΠΈΠΌΠ°ΡΠΈΡ Π² Π²Π΅Π±-Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ ΠΈ Π΄Π°Π»ΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΈΠ³ΡΠ°ΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²Π°ΠΆΠ½ΡΡ, ΠΈ Π²ΡΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°ΡΡΡΡ ΡΠΎΠ»Ρ. Π‘Π΅ΠΉΡΠ°Ρ ΡΡΡΠ΄Π½ΠΎ ΡΠΏΡΠΎΠ³Π½ΠΎΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π½Π΄Π΅Π½ΡΠΈΠΈ ΡΠ°Π·Π²ΠΈΡΠΈΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ, Π½ΠΎ ΡΠΎ, ΡΡΠΎ JavaScript Π΅ΡΠ΅ Π΄ΠΎΠ»Π³ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΠ³ΡΠ°ΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠΎΠ»Ρ Π² ΡΡΠΎΠΉ ΡΡΠ΅ΡΠ΅ β ΡΡΠΎ Π½Π΅ΡΠΎΠΌΠ½Π΅Π½Π½ΠΎ.effect Β» Π‘ΡΡΠ°Π½ΠΈΡΠ° 3 Β» Π‘ΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ ΡΠ°ΠΉΡΠΎΠ²
2 717 Π‘ΠΊΡΠΈΠΏΡΡ / AnimationAdipoli — ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
Adipoli — jQuery ΠΏΠ»Π°Π³ΠΈΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π½Π°Π΄ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΡΡΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° Π½ΠΈΡ ΠΌΡΡΠΊΠΎΠΉ.
1 204 Π‘ΠΊΡΠΈΠΏΡΡ / Menu & NavΠΠ΅Π½Ρ Ρ ΡΡΡΠ΅ΠΊΡΠΎΠΌ ΡΠ°Π·ΠΌΡΡΠΈΡ
ΠΡΠΈΠΌΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΡΠΎΡΡΠΎ CSS3 ΠΌΠ΅Π½Ρ Ρ ΡΡΡΠ΅ΠΊΡΠΎΠΌ ΡΠ°Π·ΠΌΡΡΠΈΡ (blur).
6 370 Π‘ΠΊΡΠΈΠΏΡΡ / AnimationΠΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ
Textualizer — ΡΡΡΠ΅ΠΊΡΡ Π½Π°Π΄ ΡΠ΅ΠΊΡΡΠΎΠΌ
Textualizer — jQuery ΠΏΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΡΠ°ΡΠΈΠ²ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ² Π½Π°Π΄ ΡΠ΅ΠΊΡΡΠΎΠΌ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ° Π²: Chrome, Safari 4+, Firefox 3.5+, IE 6,7,8,9+, Opera 10.6+, Mobile Safari (iOS 4) Β
4 469 Π‘ΠΊΡΠΈΠΏΡΡ / AnimationΠΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΉ Π½Π° CSS3
Π ΡΡΠΎΠΊΠ΅ ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄ΡΡ ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ CSS3. ΠΠΎΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΡΠ΅ΠΌ Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΡΠ΅ΠΉΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΠ΅ΠΉ. Π Π°Π±ΠΎΡΠ°ΡΡ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ , Π½ΠΎ Π΅ΡΠ»ΠΈ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π° ΡΠ²ΠΎΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΡΡΠΎ, ΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΡΠΎΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ. ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Ρ, ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ Π²ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ CSS3.
2 186 Π‘ΠΊΡΠΈΠΏΡΡ / ButtonsΠΠ½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ
ΠΡΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π°Π½ΠΈΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ²ΠΎΠΉΡΡΠ² CSS3, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅Π°Π³ΠΈΡΡΡΡ Π½Π° Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΡΡΠΊΠΈ ΠΈ Π½Π°ΠΆΠ°ΡΠΈΠ΅. Π Π°Π±ΠΎΡΠ°ΡΡ Π΄ΠΎΠ»ΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π±ΡΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ CSS3 Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ . Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΈΠΊΠΎΠ½ΠΊΠΈ ΠΎΡ Β webiconset.com ΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΎΡ Just Be Nice.
2 657 Π‘ΠΊΡΠΈΠΏΡΡ / TextΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠ΅ΠΊΡΡ Π½Π° HTML5
ΠΡΠ΅Π½Ρ Π½Π΅ΠΎΠ±ΡΡΠ½ΠΎ ΠΈ ΠΊΡΠ°ΡΠΈΠ²ΠΎ ΡΠ΄Π΅Π»Π°Π½Π½ΡΠΉ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ ΡΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΡΠ΅ΠΊΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ canvas. ΠΡΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π±Π°Π½Π½Π΅ΡΡ, Π΄Π»Ρ ΠΎΠΆΠΈΠ²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΡΠ°. Π Π°Π±ΠΎΡΠ°ΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎ ΡΠ°Π·Π½ΠΎΠΌΡ ΠΈ Π½Π΅ Π²ΠΎ Π²ΡΠ΅Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ .
ΠΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ 3D ΡΠ΅ΠΊΡΡ
Π ΡΡΠ°ΡΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ (ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΠΈΠΉΡΡ) 3D ΡΠ΅ΠΊΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΊΡΡΡΠΎΡΠ° ΠΌΡΡΠΈ.
1 319 Π‘ΠΊΡΠΈΠΏΡΡ / ZoomΠΡΡΠ΅ΠΊΡ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
Π ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½Π΅ΠΉ ΡΠΎΡΠΎΡΠ΅ΡΡΠΈΠΈ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΡΠ°ΡΡΠΈΠ΅ ΠΊΡΠ°ΡΠΈΠ²ΡΠ΅ ΠΏΠ΅ΠΉΠ·Π°ΠΆΠΈ, Π° ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠ°, ΠΏΡΡΠ°ΡΡΠ΅Π³ΠΎΡΡ Π·Π°ΡΠ½ΡΡΡ ΡΠ°ΠΌΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅… ΠΡΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΡΡΠ΅ΠΊΡ ΡΠΎΡΠΎΠ³ΡΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ jQuery ΠΏΠ»Π°Π³ΠΈΠ½Π° PhotoShoot 1.0.
990 Π‘ΠΊΡΠΈΠΏΡΡ / Menu & NavCSS3 ΠΌΠ΅Π½Ρ Ρ jQuery ΡΡΡΠ΅ΠΊΡΠΎΠΌ
CSS3 ΠΌΠ΅Π½Ρ Ρ ΡΡΡΠ΅ΠΊΡΠΎΠΌ ΠΏΠ»Π°Π²Π½ΠΎΠ³ΠΎ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ jQuery. ΠΠ΅Π½Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° CSS, Π° ΡΡΡΠ΅ΠΊΡ ΠΏΠ»Π°Π²Π½ΠΎΠ³ΠΎ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠ½ΠΊΡΠΎΠ² Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π² webkit Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Google Chrome).
2 263 Π‘ΠΊΡΠΈΠΏΡΡ / ButtonsΠ£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΈΠΊΠΎΠ½ΠΊΠΈ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
ΠΡΡΠ΅ΠΊΡ ΠΏΠΎΡΡΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Ρ Apple Dock — ΠΈΠΊΠΎΠ½ΠΊΠ° ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅ΡΡΡ Π² ΡΠ°Π·ΠΌΠ΅ΡΠ°Ρ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ. Π Π΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° CSS? ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠ»Π°Π²Π½ΠΎΡΡΠΈ Π½Π΅ Π±ΡΠ΄Π΅Ρ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ jQuery.
1 707 Π‘ΠΊΡΠΈΠΏΡΡ / AnimationΠΠ΅ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
ΠΡΡ ΠΎΠ΄ΠΈΠ½ Π½Π΅ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΡΡΡΠ΅ΠΊΡ Β» Π‘ΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ ΡΠ°ΠΉΡΠΎΠ²
1 052 CodepenΠΡΡΠ΅ΠΊΡ ΠΈΡΠΊΠ°ΠΆΠ΅Π½ΠΈΡ Π½Π° three.js
ΠΡΡΠ΅ΠΊΡ ΠΏΠ΅ΡΠ΅ΡΠ΅ΠΊΠ°Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π² Π΄ΡΡΠ³ΠΎΠ΅ Π½Π° ΡΠ΅ΠΉΠ΄Π΅ΡΠ°Ρ , Ρ gsap Π°Π½ΠΈΠΌΠ°ΡΠΈΠ΅ΠΉ Π½Π° ΠΊΠ°Π½Π²Π°ΡΠ΅
1 193 CodepenRepellers β ΠΊΡΡΡΠΎΠΉ ΡΡΡΠ΅ΠΊΡ Π½Π°Π΄ ΡΠ΅ΠΊΡΡΠΎΠΌ
ΠΡΠ΅Π½Ρ ΠΏΡΠΈΠΊΠΎΠ»ΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ
2 918 Π‘ΠΊΡΠΈΠΏΡΡ / Social MediaΠΡΡΠ΅ΠΊΡΡ Ρ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ
Β ΠΠ΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΊΠΎΠ»ΡΠ½ΡΡ ΡΡΡΠ΅ΠΊΡΠΎΠ² ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ ΡΠΎΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅.
4 822 Π‘ΠΊΡΠΈΠΏΡΡ / AnimationXoverlay — CSS3 ΡΡΡΠ΅ΠΊΡΡ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡ
Xoverlay ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ· ΡΠ΅Π±Ρ Π½Π°Π±ΠΎΡ CSS ΡΡΠΈΠ»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΡ Π½Π° Π²Π°Ρ ΡΠ°ΠΉΡ. Π‘ΠΎΠ±ΡΠ°Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ 50 ΡΡΡΠ΅ΠΊΡΠΎΠ², Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ, ΡΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π±ΡΠ΄Π΅Ρ Π΅ΡΠ΅ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΡΡΠΊΠΎΠ² Π±ΠΎΠ»ΡΡΠ΅ — Π±ΠΎΠ»Π΅Π΅ 150 ΡΡΡΠ΅ΠΊΡΠΎΠ².
9 779 ΠΠΎΠ»Π΅Π·Π½ΠΎHover.css — ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ CSS3 ΡΡΡΠ΅ΠΊΡΠΎΠ² ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
Hover.css — ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΡ CSS3 ΡΡΡΠ΅ΠΊΡΠΎΠ² Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° Π»ΡΠ±ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΠΊ ΠΊΠΎΡΠΎΡΠΎΠΌΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ CSS ΠΊΠ»Π°ΡΡΡ. ΠΠΎΡΡΡΠΏΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ 40 ΡΡΡΠ΅ΠΊΡΠΎΠ².
3 299 Π‘ΠΊΡΠΈΠΏΡΡ / ButtonsΠΡΡΠ΅ΠΊΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΈ ΡΡΠΈΡΡ Ρ ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ
ΠΠ΅ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
Π ΡΡΠΎΠΊΠ΅ ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄Π΅Ρ ΠΎ ΠΏΡΠΎΡΡΡΡ , Π½ΠΎ Π½Π΅ΠΎΠ±ΡΡΠ½ΡΡ ΡΡΡΠ΅ΠΊΡΠ°Ρ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΌΠΈΠ½ΠΈΠ°ΡΡΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ CSS3 — ΠΎΡΠ½ΠΎΠ²ΠΎΠΉ Π±ΡΠ΄ΡΡ css3 transitions.
2 849 Π‘ΠΊΡΠΈΠΏΡΡ / TextΠΠ½ΠΈΠΌΠ°ΡΠΈΡ ΡΠ΅ΠΊΡΡΠ° Π½Π° jQuery
ΠΠ»Π°Π³ΠΈΠ½ Π΄Π»Ρ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ ΡΠ΅ΠΊΡΡΠ° ΠΈΠΌΡΡΠΈΠΉ ΠΏΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ²: roll, step, jump, puff, highlight, ΠΊΠ°ΠΆΠ΄ΡΠΉ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ.
4 021 Π‘ΠΊΡΠΈΠΏΡΡ / Animation3D ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π·Π°Ρ Π²Π°ΡΡΠ²Π°ΡΡΠΈΠ΅ 3D ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ CSS3 ΠΈ jQuery. Π ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΡΠ΄Π΅ΠΌ ΠΌΠΈΠ½ΠΈΠ°ΡΡΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ, ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ.
2 622 Π‘ΠΊΡΠΈΠΏΡΡ / AnimationCSS3 ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
Π£ΡΠΎΠΊ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΡ Π½Π°ΡΡΠΈΠΌΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ²ΠΎΠΉΡΡΠ²Π° border. Π Π°Π±ΠΎΡΠ°ΡΡ ΡΠ°ΠΊΠΈΠ΅ ΡΡΡΠ΅ΠΊΡΡ Π±ΡΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΡ css3, Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ .
1 713 Π‘ΠΊΡΠΈΠΏΡΡ / SliderjFancyTile — ΡΠ»Π°ΠΉΠ΄Π΅Ρ Ρ ΡΡΡΠ΅ΠΊΡΠΎΠΌ ΠΌΠΎΠ·Π°ΠΉΠΊΠΈ
Adipoli — ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ
Adipoli — jQuery ΠΏΠ»Π°Π³ΠΈΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ Π½Π°Π΄ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡΠΌΠΈ ΡΡΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΡΠ΅ΠΊΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° Π½ΠΈΡ ΠΌΡΡΠΊΠΎΠΉ.
ΠΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠ΅ hover-ΡΡΡΠ΅ΠΊΡΡ Π΄Π»Ρ ΡΠ°ΠΉΡΠ° Π½Π° JS
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, ΠΌΡ Π±Ρ Ρ ΠΎΡΠ΅Π»ΠΈ ΠΏΠΎΡΡΠ½ΠΈΡΡ, Π΄Π»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ hover-ΡΡΡΠ΅ΠΊΡΡ, ΠΌΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±ΡΡΡΠ½ΠΈΠΌ. ΠΡΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π²ΠΈΠ΄Ρ ΡΡΡΠ΅ΠΊΡΠΎΠ² (Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠΈΠ΅ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ, ΠΏΠΎΠ΄ΡΠΊΠ°Π·ΠΊΠΈ, ΠΏΠ»Π°Π²Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ, ΡΡΠ°Π½ΡΡΠΎΡΠΌΠ°ΡΠΈΡ, ΡΠΎΡΠ°ΡΠΈΡ, ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅, ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅.) ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠ΅ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ Π²Π΅Π±-ΡΠ°ΠΉΡΠ° ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ Π½Π° Π½ΠΈΡ ΠΊΡΡΡΠΎΡΠ° ΠΌΡΡΠΈ. Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΡΡΠΈ ΡΡΡΠ΅ΠΊΡΡ ΠΌΠΎΠ³ΡΡ ΠΊΠ°ΠΊ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ² jQuery, ΡΠ°ΠΊ ΠΈ Π½Π° ΡΠΈΡΡΠΎΠΌ CSS3. Π‘Π΅Π³ΠΎΠ΄Π½Ρ ΠΌΡ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈΒ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΌΠΈ ΡΡΡΠ΅ΠΊΡΠ°ΠΌΠΈ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊΡΡΡΠΎΡΠ° ΠΌΡΡΠΈ.
Β
ΠΠ½ΠΎΠ³ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ² Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π½Π° ΡΠ°ΠΉΡΠ΅ Π½Π°ΡΠΈΡ ΠΏΠ°ΡΡΠ½Π΅ΡΠΎΠ², ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡΡΡΡ ΠΈ ΠΏΡΠ΅ΠΌΠΈΡΠΌ ΡΠ°Π±Π»ΠΎΠ½Ρ Ρ ΠΊΡΡΠ³Π»ΠΎΡΡΡΠΎΡΠ½ΠΎΠΉ ΡΠ΅Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΈ ΠΏΠΎΠΌΠΎΡΡΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅:
ΠΡ Ρ ΠΎΡΠΈΠΌ ΡΠ΄Π΅Π»Π°ΡΡ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΎΠΆΠΈΠ²ΠΈΡΡ ΠΈΡ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΌΠ΅ΡΡΠΈΡΡ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° ΡΡΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅.
Π¨Π°Π³ 1.Β HTML
Π Π°Π·ΠΌΠ΅ΡΠΊΠ° Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ°Ρ, Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΎΠ±ΡΠΈΠΉ Β tilter tilterβ2, Π² Π·Π°ΡΠ΅ΠΌ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ ΡΠΊΠΎΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΡΡΡΠΈΠΌ Π½Π°Ρ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠΌ:
<a href=»#»> <figure> <img src=»img/3.jpg» alt=»img03″ /> <div><div></div></div> <div></div> <figcaption> <h4>ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ</h4> <p>ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅</p> </figcaption> <svg viewBox=»0 0 300 415″> <path d=»M20.5,20.5h360v375h-260V20.5z» /> </svg> </figure> </a> |
ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ Ρ Π½Π°Ρ Π΅ΡΡΡ ΡΠ²ΠΎΠΉ ΠΊΠ»Π°ΡΡ ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π³Ρ.
Π¨Π°Π³ 2.Β CSS
ΠΠ°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ ΡΡΠΈΠ»ΠΈ Π΄Π»Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π·Π½Π°Π΅ΡΠ΅ CSS, ΡΠΎ ΠΠ°ΠΌ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΅ ΠΏΠΎΠ½ΡΡΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ Π·Π΄Π΅ΡΡΒ Π½Π΅Ρ.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 | .tilter { position: relative; display: block; flex: none; width: 300px; height: 415px; margin: 1.5em 2.5em; color: #fff; perspective: 1000px; } Β .tilter * { pointer-events: none; } Β .tilter:hover, .tilter:focus { color: #fff; outline: none; } Β .tilter__figure, .tilter__image { display: block; width: 100%; height: 100%; margin: 0; } Β .tilter__figure > * { transform: translateZ(0px); /* Force correct stacking order */ } Β .tilter__figure { position: relative; } Β .tilter__figure::before { content: »; position: absolute; top: 5%; left: 5%; width: 90%; height: 90%; box-shadow: 0 30px 20px rgba(35,32,39,0.5); } Β .tilter__deco { position: absolute; top: 0; left: 0; overflow: hidden; width: 100%; height: 100%; } Β .tilter__deco—overlay { background-image: linear-gradient(45deg, rgba(226, 60, 99, 0.4), rgba(145, 58, 252, 0.4), rgba(16, 11, 192, 0.4)); } Β .tilter__deco—shine div { position: absolute; top: -50%; left: -50%; width: 200%; height: 200%; background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.5) 0%, rgba(255, 255, 255, 0.25) 50%, transparent 100%); } Β .tilter__deco—lines { fill: none; stroke: #fff; stroke-width: 1.5px; } Β .tilter__caption { position: absolute; bottom: 0; width: 100%; padding: 4em; } Β .tilter__title { font-family: ‘Abril Fatface’, serif; font-size: 2.5em; font-weight: normal; line-height: 1; margin: 0; } Β .tilter__description { font-size: 0.85em; margin: 1em 0 0 0; letter-spacing: 0.15em; } |
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΡΠ°ΠΌΠΎΠΌΡ Π²Π°ΠΆΠ½ΠΎΠΌΡ ΡΠ°Π³Ρ, Π±Π΅Π· ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Ρ Π½Π°Ρ Π±Ρ Π½Π΅ ΠΏΠΎΠ»ΡΡΠΈΠ»ΡΡ ΡΡΠΎΡ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΡΡΠ΅ΠΊΡ.
Π¨Π°Π³ 3.Β JS
Π Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡΡ Π΄Π»ΡΒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ ΠΊΡΡΡΠΎΡΠ°:
- ΠΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΒ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ: Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π²ΡΠ°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ ΠΎΡΠ΅ΠΉ ΠΈ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ (ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΠΎΡΠ»Π°Π±Π»Π΅Π½ΠΈΠ΅ ΠΈ ΡΠ»Π°ΡΡΠΈΡΠ½ΠΎΡΡΡ β ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΊΠ°ΠΊ Π²Π°ΡΠΈΠ°Π½ΡΡ anime.js), ΡΡΠΎΠ±Ρ Π²Π΅ΡΠ½ΡΡΡΡΡ ΠΊ ΡΡΠΈΠ»Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
- ΠΠ»Ρ ΠΏΠΎΡΡΡΠΏΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈ Π²ΡΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΡ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΎΡΠΈ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- number: ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄: {Ρ : 10, Ρ: -10} ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ Π²Π΄ΠΎΠ»Ρ ΠΎΡΠΈ Ρ ΠΎΡ -10px Π΄ΠΎ 10px (ΠΊΠ°ΠΊ ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΠΌ ΠΌΡΡΡ ΡΠ»Π΅Π²Π° Π½Π°ΠΏΡΠ°Π²ΠΎ) ΠΈ Π½Π° ΠΎΡΠΈ Ρ ΠΎΡ 10px Π΄ΠΎ -10px (ΠΊΠ°ΠΊ ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΠΌ ΠΌΡΡΡ ΡΠ²Π΅ΡΡ Ρ Π²Π½ΠΈΠ·).
- array: ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄: {Π³: [10100]} ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°ΡΡΡΡ Π²Π΄ΠΎΠ»Ρ ΠΎΡΠΈ ΠΎΡ 10px Π΄ΠΎ 100px (ΠΊΠ°ΠΊ ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π΅ΠΌ ΠΌΡΡΡ ΡΠ²Π΅ΡΡ Ρ Π²Π½ΠΈΠ·).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | ΠΠ½ΠΈΡΠΈΠ»ΡΡΠΈΡ: Β new TiltFx(el, [options]); Β ΠΠΏΡΠΈΠΈ: Β var options = { movement: { imgWrapper : { translation : {x: 10, y: 10, z: 30}, rotation : {x: 0, y: -10, z: 0}, reverseAnimation : {duration : 200, easing : ‘easeOutQuad’} }, lines : { translation : {x: 10, y: 10, z: [0,70]}, rotation : {x: 0, y: 0, z: -2}, reverseAnimation : {duration : 2000, easing : ‘easeOutExpo’} }, caption : { rotation : {x: 0, y: 0, z: 2}, reverseAnimation : {duration : 200, easing : ‘easeOutQuad’} }, overlay : { translation : {x: 10, y: -10, z: 0}, rotation : {x: 0, y: 0, z: 2}, reverseAnimation : {duration : 2000, easing : ‘easeOutExpo’} }, shine : { translation : {x: 100, y: 100, z: 0}, reverseAnimation : {duration : 200, easing : ‘easeOutQuad’} } } } |
Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠ΅ hover-ΡΡΡΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΠ°Π½ΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΌ Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄Π»Ρ ΠΠ°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΡΠ΄ΠΈΠ²Π»ΡΡΡ Π½Π΅ΠΎΡΠ΄ΠΈΠ½Π°ΡΠ½ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠΌ ΠΏΠΎΡΠ΅ΡΠΈΡΠ΅Π»Π΅ΠΉ.
ΠΠΎΡ ΠΈ Π²ΡΠ΅. ΠΠΎΡΠΎΠ²ΠΎ!
Π§ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΊΠΆΠ΅:
ΠΠ²ΠΈΠΆΡΡΠΈΠ΅ΡΡ ΡΠ°ΡΡΠΈΡΡ Π½Π° JS
const canvas = document.querySelector(‘canvas’);
const ctx = canvas.getContext(‘2d’);
const RESOLUTION = 1;
let w = canvas.width = canvas.offsetWidth * RESOLUTION;
let h = canvas.height = canvas.offsetHeight * RESOLUTION;
const PARTICLE_COUNT = 400;
const CONNECT_DISTANCE = w * 0.06;
const FORCE_DISTANCE = w * 0.2;
const r = (n = 1) => Math.random() * n;
const PI = Math.PI;
const TAU = PI * 2;
let time = new Date;
const lerp = (start, end, amt) => {
Β Β Β Β return (1-amt)*start+amt*end
};
const distance = (x1, y1, x2, y2) => {
Β Β Β Β const a = x1 — x2;
Β Β Β Β const b = y1 — y2;
Β Β Β Β return Math.sqrt( a*a + b*b );
};
const angle = (cx, cy, ex, ey) => {
Β Β Β Β return Math.atan2(ey — cy, ex — cx);
};
const particlePrototype = () => ({
Β Β Β Β x: w * 0.5 + (Math.cos(r(TAU)) * r(w* 0.5)),
Β Β Β Β y: h * 0.5 + (Math.sin(r(TAU)) * r(h* 0.5)),
Β Β Β Β angle: r(TAU),
Β Β Β Β speed: r(0.15),
Β Β Β Β normalSpeed: r(0.15),
Β Β Β Β oscAmplitudeX: r(2),
Β Β Β Β oscSpeedX: 0.001 + r(0.008),
Β Β Β Β oscAmplitudeY: r(2),
Β Β Β Β oscSpeedY: 0.001 + (r(0.008)),
Β Β Β Β connectDistance: r(CONNECT_DISTANCE),
Β Β Β Β color: {
Β Β Β Β Β Β Β Β r: Math.round(200 + r(55)),
Β Β Β Β Β Β Β Β g: Math.round(150 + r(105)),
Β Β Β Β Β Β Β Β b: Math.round(200 + r(55))
Β Β Β Β }
});
const particles = (new Array(PARTICLE_COUNT))
.fill({})
.map(particlePrototype);
const update = () => {
Β Β Β Β particles.forEach(p1 => {
Β Β Β Β Β Β Β Β p1.x += (Math.cos(p1.angle) + (Math.cos(time * p1.oscSpeedX) * p1.oscAmplitudeX)) * p1.speed;
Β Β Β Β Β Β Β Β p1.y += (Math.sin(p1.angle) + (Math.cos(time * p1.oscSpeedY) * p1.oscAmplitudeY)) * p1.speed;
Β Β Β Β Β Β Β Β p1.speed = lerp(p1.speed, p1.normalSpeed * RESOLUTION, 0.1);Β Β
Β Β Β Β Β Β Β Β if (p1.x > w || p1.x < 0) {
Β Β Β Β Β Β Β Β Β Β Β Β p1.angle = PI — p1.angle;
Β Β Β Β Β Β Β Β }
Β Β Β Β Β Β Β Β if (p1.y > h || p1.y < 0) {
Β Β Β Β Β Β Β Β Β Β Β Β p1.angle = -p1.angle;
Β Β Β Β Β Β Β Β }Β Β Β Β Β Β Β Β
Β Β Β Β Β Β Β Β if (r() < 0.005)
Β Β Β Β Β Β Β Β p1.oscAmplitudeX = r(2);
Β Β Β Β Β Β Β Β if (r() < 0.005)
Β Β Β Β Β Β Β Β p1.oscSpeedX = 0.001 + (r(0.008));
Β Β Β Β Β Β Β Β if (r() < 0.005)
Β Β Β Β Β Β Β Β p1.oscAmplitudeY = r(2);
Β Β Β Β Β Β Β Β if (r() < 0.005)
Β Β Β Β Β Β Β Β p1.oscSpeedY = 0.001 + r(0.008);
Β Β Β Β Β Β Β Β
Β Β Β Β Β Β Β Β p1.x = Math.max(-0.01,Math.min(p1.x, w + 0.01));
Β Β Β Β Β Β Β Β p1.y = Math.max(-0.01,Math.min(p1.y, h + 0.01));
Β Β Β Β });
};
const render = () => {
Β Β Β Β ctx.clearRect(0,0,w,h);Β Β Β Β
Β Β Β Β particles.map(p1 => {
Β Β Β Β Β Β Β Β particles
Β Β Β Β Β Β Β Β .filter(p2 => {
Β Β Β Β Β Β Β Β Β Β Β Β if (p1 == p2)
Β Β Β Β Β Β Β Β Β Β Β Β return false;
Β Β Β Β Β Β Β Β Β Β Β Β if (distance(p1.x, p1.y, p2.x, p2.y) > p1.connectDistance)
Β Β Β Β Β Β Β Β Β Β Β Β return false;
Β Β Β Β Β Β Β Β Β Β Β Β return true;
Β Β Β Β Β Β Β Β })
Β Β Β Β Β Β Β Β .map(p2 => {
Β Β Β Β Β Β Β Β Β Β Β Β const dist = distance(p1.x, p1.y, p2.x, p2.y);
Β Β Β Β Β Β Β Β Β Β Β Β p1.speed = lerp(p1.speed, p1.speed + (0.05 / p1.connectDistance * dist), 0.2);
Β Β Β Β Β Β Β Β Β Β Β Β return {
Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β p1,
Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β p2,
Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β color: p1.color,
Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β Β opacity: Math.floor(100 / p1.connectDistance * (p1.connectDistance — dist)) / 100
Β Β Β Β Β Β Β Β Β Β Β Β };
Β Β Β Β Β Β Β Β })
Β Β Β Β Β Β Β Β .forEach((line, i) => {
Β Β Β Β Β Β Β Β Β Β Β Β const colorSwing = Math.sin(time * (line.p1.oscSpeedX));
Β Β Β Β Β Β Β Β Β Β Β Β ctx.beginPath();
Β Β Β Β Β Β Β Β Β Β Β Β ctx.globalAlpha = line.opacity;
Β Β Β Β Β Β Β Β Β Β Β Β ctx.moveTo(line.p1.x, line.p1.y);
Β Β Β Β Β Β Β Β Β Β Β Β ctx.lineTo(line.p2.x, line.p2.y);
Β Β Β Β Β Β Β Β Β Β Β Β ctx.strokeStyle = `rgb(
Β Β Β Β Β Β Β Β Β Β Β Β ${Math.floor(line.color.r * colorSwing)},
Β Β Β Β Β Β Β Β Β Β Β Β ${Math.floor((line.color.g * 0.5) + ((line.color.g * 0.5) * colorSwing))},
Β Β Β Β Β Β Β Β Β Β Β Β ${line.color.b}
Β Β Β Β Β Β Β Β Β Β Β Β )`
Β Β Β Β Β Β Β Β Β Β Β Β ctx.lineWidth = (line.opacity * 4);
Β Β Β Β Β Β Β Β Β Β Β Β ctx.stroke();
Β Β Β Β Β Β Β Β Β Β Β Β ctx.closePath();
Β Β Β Β Β Β Β Β });
Β Β Β Β });
};
const loop = () => {
Β Β Β Β time = new Date;
Β Β Β Β update();
Β Β Β Β render();
Β Β Β Β window.requestAnimationFrame(loop);
};
loop();
window.addEventListener(‘mousemove’, e => {
Β Β const mouseX = (e.clientX — canvas.getBoundingClientRect().left) * RESOLUTION;
Β Β const mouseY = (e.clientY — canvas.getBoundingClientRect().top) * RESOLUTION;
Β Β particles.forEach(p => {
Β Β Β Β const dist = distance(mouseX, mouseY, p.x, p.y);Β Β
Β Β Β Β if (dist < FORCE_DISTANCE && dist > 0) {
Β Β Β Β Β Β p.angle = angle(mouseX, mouseY, p.x, p.y)
Β Β Β Β Β Β const force = (FORCE_DISTANCE — dist) * 0.1;
Β Β Β Β Β Β p.speed = lerp(p.speed, force, 0.2);
Β Β Β Β }
Β Β });Β Β Β Β
});
ΠΡΡΠ΅ΠΊΡ ΡΡΠΌΠΎΠ²ΡΡ ΠΏΠΎΠΌΠ΅Ρ Π½Π° HTML5 Canvas β Π£Π½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΠΊΡΠΈΠΏΡΡ ΠΈ Π³ΠΎΡΠΎΠ²ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΡΠ°ΠΉΡΠ°
<canvas></canvas>
<img src=»Π‘Π‘Π«ΠΠΠ_ΠΠ_ΠΠΠ Π’ΠΠΠΠ£»>
Β
<script>
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError(«Cannot call a class as a function»);
}
}
var Grain = function() {
function Grain(el) {
_classCallCheck(this, Grain);
/**
* Options
*/
this.patternSize = 150;
this.patternScaleX = 1;
this.patternScaleY = 1;
this.patternRefreshInterval = 3; // 8
this.patternAlpha = 15; // int between 0 and 255,
/**
* Create canvas
*/
this.canvas = el;
this.ctx = this.canvas.getContext(‘2d’);
this.ctx.scale(this.patternScaleX, this.patternScaleY);
/**
* Create a canvas that will be used to generate grain and used as a
* pattern on the main canvas.
*/
this.patternCanvas = document.createElement(‘canvas’);
this.patternCanvas.width = this.patternSize;
this.patternCanvas.height = this.patternSize;
this.patternCtx = this.patternCanvas.getContext(‘2d’);
this.patternData = this.patternCtx.createImageData(this.patternSize, this.patternSize);
this.patternPixelDataLength = this.patternSize * this.patternSize * 4; // rgba = 4
this.resize = this.resize.bind(this);
this.loop = this.loop.bind(this);
this.frame = 0;
window.addEventListener(‘resize’, this.resize);
this.resize();
window.requestAnimationFrame(this.loop);
}
Grain.prototype.resize = function resize() {
this.canvas.width = window.innerWidth * devicePixelRatio;
this.canvas.height = window.innerHeight * devicePixelRatio;
};
Grain.prototype.update = function update() {
var patternPixelDataLength = this.patternPixelDataLength;
var patternData = this.patternData;
var patternAlpha = this.patternAlpha;
var patternCtx = this.patternCtx;
// put a random shade of gray into every pixel of the pattern
for (var i = 0; i < patternPixelDataLength; i += 4) {
// const value = (Math.random() * 255) | 0;
var value = Math.random() * 255;
patternData.data[i] = value;
patternData.data[i + 1] = value;
patternData.data[i + 2] = value;
patternData.data[i + 3] = patternAlpha;
}
patternCtx.putImageData(patternData, 0, 0);
};
Grain.prototype.draw = function draw() {
var ctx = this.ctx;
var patternCanvas = this.patternCanvas;
var canvas = this.canvas;
var viewHeight = this.viewHeight;
var width = canvas.width;
var height = canvas.height;
// clear canvas
ctx.clearRect(0, 0, width, height);
// fill the canvas using the pattern
ctx.fillStyle = ctx.createPattern(patternCanvas, ‘repeat’);
ctx.fillRect(0, 0, width, height);
};
Grain.prototype.loop = function loop() {
// only update grain every n frames
var shouldDraw = ++this.frame % this.patternRefreshInterval === 0;
if (shouldDraw) {
this.update();
this.draw();
}
window.requestAnimationFrame(this.loop);
};
return Grain;
}();
var el = document.querySelector(‘.grain’);
var grain = new Grain(el);
</script>