cari
Rumahhujung hadapan webtutorial jsAnijs: Perpustakaan Pengendalian Deklaratif untuk Animasi CSS

3

Animasi selalu menjadi kegemaran panas di kalangan pelajar belajar program. Semasa bengkel pembangunan web hujung minggu baru -baru ini yang saya hadiri, terdapat perbincangan mengenai animasi menggunakan CSS. Itulah ketika saya terjumpa Anijs, perpustakaan pengendalian deklaratif untuk animasi CSS. AniJS: A Declarative Handling Library for CSS Animations

Dalam tutorial ini, kita akan melihat apa yang Anijs adalah tentang dan cara menggunakannya untuk membuat beberapa kesan animasi yang sejuk.

Anijs: Perpustakaan Pengendalian Deklaratif untuk Animasi CSS Takeaways Key

Anijs adalah perpustakaan pengendalian deklaratif untuk animasi CSS yang membolehkan untuk membuat animasi menggunakan perintah mudah, deklaratif yang ditulis secara langsung dalam HTML, memudahkan pengurusan animasi.

Perpustakaan menggunakan atribut tersuai yang dipanggil data-anijs dalam atribut data HTML5 untuk membuat pernyataan deklaratif untuk animasi. Sebagai contoh, kod `

` `Jika medan input difokuskan, ia akan melakukan animasi 'goyah' ke elemen tag anchor.

anijs boleh digunakan untuk meningkatkan aplikasi web dengan animasi. Tutorial menggunakan contoh pendaftaran pengguna dan aplikasi log masuk yang mudah, menunjukkan cara membuat skrin log masuk, mengesahkan proses log masuk, dan membuat skrin daftar dengan animasi menggunakan ANIJS.
  • Perpustakaan juga menyediakan keupayaan untuk memanggil fungsi sebelum dan selepas animasi menggunakan kata kunci 'sebelum'. Ini boleh digunakan untuk mengawal aliran animasi, seperti mengesahkan penyertaan bentuk sebelum menjalankan animasi atau menunjukkan dan menyembunyikan skrin yang berbeza sebelum menjalankan animasi.
  • Pengenalan kepada Anijs
  • Menggunakan anijs, kita boleh menulis animasi menggunakan perintah deklaratif tepat di HTML kami. Ia menyediakan cara yang lebih mudah untuk menguruskan animasi menggunakan pengisytiharan yang menyatakan logik. Berikut adalah contoh sintaks Deklaratif ANIJ:
  • Dalam kod di atas, sintaks deklaratif berkata,
Jika fokus kemudian lakukan goyangan ke elemen tag anchor.

Bermula

<span><span><span><input> id<span>="txtName"</span> type<span>="text"</span> data-anijs<span>="if: focus, do: wobble, to: a"</span>></span></span></span>
Semasa tutorial ini, kami akan membuat aplikasi yang dipertingkatkan dengan animasi menggunakan ANIJs. Aplikasi ini akan menjadi pendaftaran pengguna dan aplikasi log masuk yang mudah yang akan merangkumi beberapa animasi menggunakan ANIJS. Tumpuan utama tutorial ini ialah bagaimana kita boleh membuat animasi berfungsi dalam aplikasi web kami menggunakan anijs.

untuk memulakan, muat turun anijs dan masukkannya di halaman anda, atau merujuk versi CDN.

untuk gaya kami akan menggunakan libray animate.css oleh Dan Eden.

Membuat skrin log masuk

Pertama kami akan membuat skrin untuk pengguna log masuk. Inilah HTML:
<span><span><span><script> src<span >="http://cdn.jsdelivr.net/anijs/0.4.0/anijs-min.js"</script></span>></span><span><span></span>></span></span>

Apa yang kita ada setakat ini hanyalah halaman log masuk statik. Dengan beberapa CSS, nampaknya ini:
<span><span><span><link> rel<span>="stylesheet"</span>
</span></span><span>      <span>href<span>="http://cdn.jsdelivr.net/animatecss/3.1.0/animate.css"</span>></span></span></span>

Lihat tutorial pena Anijs, skrin log masuk statik oleh SitePoint (@SitePoint) pada codepen.

Kami telah membuat skrin kami, sekarang kami perlu mengesahkan proses log masuk. Untuk melampirkan kesan animasi, kami menggunakan atribut data-anijs pada elemen tertentu. Kami menulis pernyataan deklaratif kami menggunakan atribut data HTML5, menggunakan atribut tersuai yang dipanggil Data-Anijs. Mari tambahkan atribut ini ke butang Signin, seperti yang ditunjukkan di bawah:

<span><span><span><input> id<span>="txtName"</span> type<span>="text"</span> data-anijs<span>="if: focus, do: wobble, to: a"</span>></span></span></span>

Dalam kod di atas, ayat deklaratif mengatakan, Apabila butang log masuk diklik, lakukan animasi engsel ke elemen dengan kelas .login_screen . Oleh itu, apabila kita mengklik butang, animasi engsel berkuatkuasa, seperti yang anda lihat dengan mengklik butang Signin dalam demo di bawah:

Lihat demo pena Anijs, Log masuk gagal oleh SitePoint (@SitePoint) pada codepen.

Dalam demo di atas, animasi berfungsi apabila butang diklik tanpa mengira sama ada terdapat log masuk yang sah atau tidak sah. Itu bukan apa yang kita mahu, jadi mari kita mengubah kod sedia ada untuk menghidupkan hanya pada log masuk yang tidak sah.

Untuk memeriksa sama ada log masuk adalah sah, kami perlu memanggil fungsi mengesahkan sebelum animasi. Untuk ini, kami akan menggunakan kata kunci sebelum ini. Dokumentasi terperinci yang berkaitan dengan memanggil fungsi sebelum dan selepas animasi boleh didapati dalam dokumen ANIJS. Kami akan lulus dalam objek acara untuk mencetuskan animasi, serta AnimationContext.

Pertama, kami akan menentukan penolong Anijs dan kemudian kami akan mengisytiharkan fungsi animasi sebelum ini. Inilah cara fungsi kelihatan:

<span><span><span><script> src<span >="http://cdn.jsdelivr.net/anijs/0.4.0/anijs-min.js"</script></span>></span><span><span></span>></span></span>

kami juga akan mengubah suai atribut data butang Signin untuk memasukkan fungsi animasi sebelum, seperti yang ditunjukkan di bawah:

<span><span><span><link> rel<span>="stylesheet"</span>
</span></span><span>      <span>href<span>="http://cdn.jsdelivr.net/animatecss/3.1.0/animate.css"</span>></span></span></span>

Sekarang animasi akan berlaku hanya jika medan e -mel atau kata laluan kosong. Animasi dijalankan menggunakan perintah AnimationContext.Run () dalam blok kod JavaScript di atas. Jika kedua -dua e -mel dan kata laluan dimasukkan maka ia akan menunjukkan mesej 'pemprosesan ...'.

inilah demo dari apa yang kita ada setakat ini:

Lihat demo Pena Anijs, Mengesahkan butang Signin oleh SitePoint (@SitePoint) pada Codepen.

Membuat Skrin Daftar

Seterusnya kami akan membuat halaman daftar (atau pendaftaran) untuk aplikasi kami. Seperti yang anda lihat, kami sudah mempunyai pautan daftar pada halaman log masuk kami. Apa yang akan kita lakukan ialah melampirkan beberapa animasi dan acara ke pautan daftar. Pertama, tambahkan HTML berikut untuk halaman daftar ke HTML kami yang sedia ada:

<span><span><span><div> class<span>="container"</span>>

    <span><span><span><div> id<span>="divLogin"</span> class<span>="login_screen"</span>>
      <span><span><span><h2 id="id-span-spnLogin-span-gt"> id<span>="spnLogin"</span>></h2></span>Sign In<span><span></span>></span>
</span>      <span><span><span><input> id<span>="txtLoginId"</span> type<span>="text"</span> placeholder<span>="Email Id"</span> /></span>
</span>      <span><span><span><input> id<span>="txtLoginPass"</span> type<span>="password"</span> placeholder<span>="Password"</span> /></span>
</span>      <span><span><span><a> href<span>="#"</span> class<span>="btn"</span>></a></span>
</span>        SignIn
      <span><span><span></span>></span>
</span>      <span><span><span><a> href<span>="#"</span> class<span>="signup-link"</span>></a></span>Register?<span><span></span>></span>
</span>    <span><span><span></span></span></span></span></span></span></span></span>
</div></span>></span><!-- .login-screen -->
</span>
<span><span><span></span></span></span>
</div></span>></span><!-- .container --></span>

Perhatikan CSS sebaris dengan paparan: Tiada pada elemen .reg_screen, yang menjadikan skrin ini tersembunyi secara lalai. Untuk menyambungkan pautan daftar di skrin log masuk ke skrin baru ini, kami akan menambah atribut Data-Anijs ke pautan:

<span><span><span><input> id<span>="txtName"</span> type<span>="text"</span> data-anijs<span>="if: focus, do: wobble, to: a"</span>></span></span></span>

Kod di atas mengatakan Apabila pautan pendaftaran diklik, lakukan animasi rollin pada elemen yang mempunyai kelas reg_screen (yang merupakan skrin daftar kami). Tetapi ini tidak akan berfungsi, kerana skrin daftar tersembunyi.

Apa yang perlu kita lakukan ialah memanggil fungsi sebelum animasi berlaku. Dalam fungsi itu, kami menyembunyikan skrin log masuk semasa membuat skrin daftar kelihatan. Kemudian kami menjalankan animasi. Inilah JavaScript:

<span><span><span><script> src<span >="http://cdn.jsdelivr.net/anijs/0.4.0/anijs-min.js"</script></span>></span><span><span></span>></span></span>

maka kami akan mengubah suai atribut data-anijs pautan daftar:

<span><span><span><link> rel<span>="stylesheet"</span>
</span></span><span>      <span>href<span>="http://cdn.jsdelivr.net/animatecss/3.1.0/animate.css"</span>></span></span></span>

Berikut adalah demo dengan kod yang baru ditambah:

lihat pena zdjlc oleh sitepoint (@sitePoint) pada codepen.

Sekarang bahawa skrin daftar dapat dilihat, kita juga perlu menyambungkan pautan login dalam skrin daftar ke skrin log masuk asal, sama seperti yang kami lakukan untuk skrin daftar. Inilah fungsi:

<span><span><span><div> class<span>="container"</span>>

    <span><span><span><div> id<span>="divLogin"</span> class<span>="login_screen"</span>>
      <span><span><span><h2 id="id-span-spnLogin-span-gt"> id<span>="spnLogin"</span>></h2></span>Sign In<span><span></span>></span>
</span>      <span><span><span><input> id<span>="txtLoginId"</span> type<span>="text"</span> placeholder<span>="Email Id"</span> /></span>
</span>      <span><span><span><input> id<span>="txtLoginPass"</span> type<span>="password"</span> placeholder<span>="Password"</span> /></span>
</span>      <span><span><span><a> href<span>="#"</span> class<span>="btn"</span>></a></span>
</span>        SignIn
      <span><span><span></span>></span>
</span>      <span><span><span><a> href<span>="#"</span> class<span>="signup-link"</span>></a></span>Register?<span><span></span>></span>
</span>    <span><span><span></span></span></span></span></span></span></span></span>
</div></span>></span><!-- .login-screen -->
</span>
<span><span><span></span></span></span>
</div></span>></span><!-- .container --></span>

dan di sini adalah atribut data-anijs yang diubah suai untuk pautan log masuk:

<span><span><span><a> href<span>="#"</span> 
</a></span></span><span>   <span>class<span>="btn"</span> 
</span></span><span>   <span>data-anijs<span>="if: click, do: hinge animated, to: .login_screen"</span>></span>
</span>  SignIn
<span><span><span></span></span></span></span>
>

Dan di sini adalah demo dengan kod baru:

Nota Editor

: Demo di bawah nampaknya tidak berfungsi 100% dengan betul dalam embeds ini, khususnya apabila anda cuba beralih ke belakang dan sebagainya antara "Log masuk" dan "Daftar". Cuba pautan "edit" dalam bingkai codepen untuk melihat demo penuh, di mana ia harus berfungsi dengan baik.

Lihat demo Pena Anijs, Tunjukkan Login & Tunjukkan Daftar oleh SitePoint (@SitePoint) pada Codepen.

Sama seperti apa yang kami lakukan dalam skrin log masuk, kami akan mengesahkan borang daftar menggunakan fungsi:

<span>var animationHelper = AniJS.getHelper(),
</span>    spnLogin <span>= document.getElementById('spnLogin');
</span>
animationHelper<span>.validateLogin = function (e<span>, animationContext</span>) {
</span>    <span>var email = document.getElementById('txtLoginId').value;
</span>    <span>var pass = document.getElementById('txtLoginPass').value;
</span>    <span>if (email && pass) {
</span>      spnLogin<span>.innerHTML = 'Processing...';
</span>    <span>} else {
</span>      spnLogin<span>.innerHTML = 'Fill Required fields.';
</span>      animationContext<span>.run();
</span>    <span>}
</span><span>}</span>

Biasanya kita akan caching banyak objek ini dalam pembolehubah, dan bukannya mengulangi rujukan kepada mereka. Kami melakukannya dengan cara ini hanya untuk contoh mudah ini.

Dan akhirnya, mari ubah suai atribut data-Anijs dalam HTML kami untuk memasukkan panggilan animasi dan fungsi.

<span><span><span><a> href<span>="#"</span>
</a></span></span><span>   <span>class<span>="btn"</span>
</span></span><span>   <span>data-anijs<span>="if: click, do: hinge animated, to: .login_screen, before: validateLogin"</span>></span>
</span>  SignIn
<span><span><span></span>></span></span></span>

Dan inilah demo terakhir kami:

Lihat final demo pena Anijs oleh SitePoint (@SitePoint) pada codepen.

Kesimpulan

Dalam tutorial ini, apa yang kita bincangkan hanyalah puncak menyelinap ke perpustakaan yang hebat ini. Maklumat mendalam mengenai penggunaannya boleh didapati dalam dokumen ANIJS.

Soalan Lazim (Soalan Lazim) Mengenai Anijs

Apa itu Anijs dan bagaimana ia berfungsi? Ia membolehkan pemaju membuat animasi menggunakan sintaks mudah dan intuitif, tanpa perlu menulis kod JavaScript kompleks. ANIJs berfungsi dengan menghuraikan atribut data-Anijs dalam elemen HTML anda dan melaksanakan animasi yang sepadan. Ini menjadikannya lebih mudah untuk mengurus dan mengawal animasi, kerana anda boleh menentukannya secara langsung di HTML anda.

bagaimana saya memasang anijs?

Memasang anijs adalah mudah. Anda boleh memuat turunnya terus dari repositori GitHub atau menggunakan pengurus pakej seperti NPM atau Bower. Setelah dimuat turun, anda hanya perlu memasukkan skrip ANIJS dalam fail HTML anda. Anda kemudian boleh mula menggunakan anijs dengan menambahkan atribut data-anijs ke elemen HTML anda. perpustakaan. Ia tidak mengganggu fungsi perpustakaan lain, dan anda boleh menggunakannya bersama perpustakaan seperti jquery, react, atau sudut. Ini menjadikan Anijs alat yang serba boleh untuk membuat animasi dalam pelbagai konteks pembangunan web.

Bagaimana saya membuat animasi dengan anijs? Elemen HTML dan menentukan parameter animasi. Atribut Data-Anijs menggunakan sintaks mudah yang menentukan peristiwa, elemen untuk menghidupkan, animasi untuk memohon, dan fungsi panggil balik. Anda juga boleh menggunakan fungsi penolong anijs untuk mengawal aliran animasi.

Apakah jenis animasi yang boleh saya buat dengan Anijs? Anda boleh membuat animasi mudah seperti pudar dan slaid, serta animasi yang lebih kompleks yang melibatkan transformasi dan peralihan. Anijs juga menyokong animasi chaining, yang membolehkan anda membuat urutan animasi yang dilaksanakan dalam urutan tertentu. Animasi yang dibuat dengan ANIJ adalah berdasarkan CSS, yang bermaksud mereka boleh diperkuat dan disesuaikan dengan saiz dan resolusi skrin yang berbeza. Ini menjadikan Anijs alat yang berguna untuk membuat animasi yang berfungsi dengan baik pada kedua -dua desktop dan peranti mudah alih. animasi. Anda boleh menentukan tempoh animasi dalam atribut Data-Anijs, dan anda boleh menggunakan fungsi kelewatan untuk menjeda animasi untuk masa tertentu. Anda juga boleh menggunakan fungsi penolong anijs untuk mengawal aliran animasi dan masa. Anda boleh menggunakan parameter animasi yang sama dan kaedah kawalan kepada elemen SVG seperti yang anda lakukan untuk elemen HTML biasa. Ini membolehkan anda membuat animasi kompleks yang melibatkan grafik dan bentuk SVG. sifat animasi. Jika animasi tidak berfungsi seperti yang diharapkan, anda boleh menggunakan alat pemaju penyemak imbas untuk memeriksa elemen HTML dan periksa sifat CSS yang digunakan. Anda juga boleh menyemak konsol JavaScript untuk sebarang mesej ralat yang berkaitan dengan Anijs.

Bolehkah saya menyumbang kepada pembangunan anijs? Anda boleh menyumbang dengan melaporkan pepijat, mencadangkan ciri -ciri baru, meningkatkan dokumentasi, atau mengemukakan permintaan tarik dengan penambahbaikan kod. Anda boleh mendapatkan lebih banyak maklumat mengenai cara menyumbang pada halaman Anijs GitHub.

Atas ialah kandungan terperinci Anijs: Perpustakaan Pengendalian Deklaratif untuk Animasi CSS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Aliran node.js dengan typescriptAliran node.js dengan typescriptApr 30, 2025 am 08:22 AM

Node.js cemerlang pada I/O yang cekap, sebahagian besarnya terima kasih kepada aliran. Aliran memproses data secara berperingkat, mengelakkan beban memori-ideal untuk fail besar, tugas rangkaian, dan aplikasi masa nyata. Menggabungkan sungai dengan keselamatan jenis typescript mencipta powe

Python vs JavaScript: Pertimbangan Prestasi dan KecekapanPython vs JavaScript: Pertimbangan Prestasi dan KecekapanApr 30, 2025 am 12:08 AM

Perbezaan prestasi dan kecekapan antara Python dan JavaScript terutamanya dicerminkan dalam: 1) sebagai bahasa yang ditafsirkan, Python berjalan perlahan tetapi mempunyai kecekapan pembangunan yang tinggi dan sesuai untuk pembangunan prototaip pesat; 2) JavaScript adalah terhad kepada benang tunggal dalam penyemak imbas, tetapi I/O multi-threading dan asynchronous boleh digunakan untuk meningkatkan prestasi dalam node.js, dan kedua-duanya mempunyai kelebihan dalam projek sebenar.

Asal JavaScript: Meneroka Bahasa PelaksanaannyaAsal JavaScript: Meneroka Bahasa PelaksanaannyaApr 29, 2025 am 12:51 AM

JavaScript berasal pada tahun 1995 dan dicipta oleh Brandon Ike, dan menyedari bahasa itu menjadi C. 1.C Language menyediakan keupayaan pengaturcaraan prestasi tinggi dan sistem untuk JavaScript. 2. Pengurusan memori JavaScript dan pengoptimuman prestasi bergantung pada bahasa C. 3. Ciri lintas platform bahasa C membantu JavaScript berjalan dengan cekap pada sistem operasi yang berbeza.

Di sebalik tabir: Apa bahasa JavaScript?Di sebalik tabir: Apa bahasa JavaScript?Apr 28, 2025 am 12:01 AM

JavaScript berjalan dalam penyemak imbas dan persekitaran Node.js dan bergantung pada enjin JavaScript untuk menghuraikan dan melaksanakan kod. 1) menjana pokok sintaks abstrak (AST) di peringkat parsing; 2) menukar AST ke bytecode atau kod mesin dalam peringkat penyusunan; 3) Laksanakan kod yang disusun dalam peringkat pelaksanaan.

Masa Depan Python dan JavaScript: Trend dan RamalanMasa Depan Python dan JavaScript: Trend dan RamalanApr 27, 2025 am 12:21 AM

Trend masa depan Python dan JavaScript termasuk: 1. Kedua -duanya akan terus mengembangkan senario aplikasi dalam bidang masing -masing dan membuat lebih banyak penemuan dalam prestasi.

Python vs JavaScript: Persekitaran dan Alat PembangunanPython vs JavaScript: Persekitaran dan Alat PembangunanApr 26, 2025 am 12:09 AM

Kedua -dua pilihan Python dan JavaScript dalam persekitaran pembangunan adalah penting. 1) Persekitaran pembangunan Python termasuk Pycharm, Jupyternotebook dan Anaconda, yang sesuai untuk sains data dan prototaip cepat. 2) Persekitaran pembangunan JavaScript termasuk node.js, vscode dan webpack, yang sesuai untuk pembangunan front-end dan back-end. Memilih alat yang betul mengikut keperluan projek dapat meningkatkan kecekapan pembangunan dan kadar kejayaan projek.

Adakah JavaScript ditulis dalam C? Memeriksa buktiAdakah JavaScript ditulis dalam C? Memeriksa buktiApr 25, 2025 am 12:15 AM

Ya, teras enjin JavaScript ditulis dalam C. 1) Bahasa C menyediakan prestasi yang efisien dan kawalan asas, yang sesuai untuk pembangunan enjin JavaScript. 2) Mengambil enjin V8 sebagai contoh, terasnya ditulis dalam C, menggabungkan kecekapan dan ciri-ciri berorientasikan objek C. 3) Prinsip kerja enjin JavaScript termasuk parsing, penyusun dan pelaksanaan, dan bahasa C memainkan peranan penting dalam proses ini.

Peranan JavaScript: Membuat Web Interaktif dan DinamikPeranan JavaScript: Membuat Web Interaktif dan DinamikApr 24, 2025 am 12:12 AM

JavaScript adalah di tengah -tengah laman web moden kerana ia meningkatkan interaktiviti dan dinamik laman web. 1) Ia membolehkan untuk menukar kandungan tanpa menyegarkan halaman, 2) memanipulasi laman web melalui Domapi, 3) menyokong kesan interaktif kompleks seperti animasi dan drag-and-drop, 4) mengoptimumkan prestasi dan amalan terbaik untuk meningkatkan pengalaman pengguna.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat

Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.