mata teras
- Kaedah JQuery
- adalah alat serba boleh yang membolehkan pemaju membuat animasi tersuai dengan secara beransur -ansur mengubah sifat CSS unsur -unsur dalam tempoh yang ditentukan.
animate()
Kaedah - hanya sesuai untuk sifat CSS berangka dan tidak sesuai untuk animasi yang sangat kompleks kerana masalah prestasi mungkin berlaku.
animate()
Kaedah ini kebanyakannya datang dalam dua bentuk: - dan
animate(properties[, duration][, easing][, callback])
, dan kebanyakan parameter adalah pilihan. Parameter ini mengawal aspek animasi, seperti tempoh, fungsi pelonggaran, dan apa yang berlaku selepas animasi selesai.animate(properties[, options])
pemaju boleh membuat animasi yang lebih kompleks dengan menghubungkan pelbagai kaedah - bersama -sama, yang membolehkan urutan animasi dilaksanakan dalam urutan panggilan. Ciri ini dipanggil "beratur", yang meningkatkan fungsi dan fleksibiliti animasi jQuery.
animate()
, fadeIn()
, hide()
, dan lain -lain), untuk memastikan ia ringan, perpustakaan menyediakan cara yang sangat fleksibel untuk membuat apa sahaja yang kita mahukan animasi. Ini adalah subjek artikel ini. JQuery's slideDown()
adalah kaedah pembungkus animate()
animate()
, yang bermaksud ia beroperasi pada satu set elemen DOM yang dipilih sebelum ini yang dibungkus oleh jQuery. Kaedah ini membolehkan anda menggunakan kesan animasi tersuai anda sendiri kepada elemen dalam koleksi anda. Untuk melakukan ini, kita mesti menyediakan satu set sifat gaya CSS dan nilai -nilai yang akan dicapai pada akhir animasi. Nilai perantaraan gaya semasa kesan animasi (yang diproses secara automatik oleh enjin animasi) ditentukan oleh tempoh kesan dan fungsi pelonggaran, yang akan dibincangkan tidak lama lagi. Senarai atribut gaya CSS yang boleh animasi adalah terhad kepada sifat-sifat yang menerima nilai angka. Nilai ini boleh menjadi nilai mutlak (contohnya, 200) atau nilai relatif dari titik permulaan. Untuk nilai mutlak, jQuery menganggap bahawa piksel adalah unit lalai. Kami juga boleh menentukan unit lain seperti EM, REM, atau peratusan. Untuk menentukan nilai relatif, kita mesti preface atau untuk menunjukkan nilai sasaran relatif dalam arah positif atau negatif. Sekarang kita mempunyai pemahaman tentang =
, sudah tiba masanya untuk melihat tandatangannya dan parameternya. -=
animate()
Kaedah ini mempunyai dua bentuk utama, kebanyakan parameternya adalah pilihan (ditunjukkan dalam kurungan persegi biasa):
-
animate(properties[, duration][, easing][, callback])
-
animate(properties[, options])
Mengenai parameter, ada banyak yang boleh dikatakan:
- (objek): Jadual hash yang mengandungi nilai yang harus dicapai pada akhir animasi.
-
properties
(nombor | String): Tempoh kesan (dalam milisaat) atau salah satu rentetan yang telah ditetapkan: "lambat" (600 milisaat), "normal" (400 milisaat), atau "cepat" (200 ms). Lalai adalah "normal". -
duration
(String): Nama fungsi pelonggaran yang akan digunakan semasa melakukan penukaran. Nilai lalai ialah "Swing". -
easing
(fungsi): Fungsi yang dilaksanakan apabila menghidupkan untuk setiap elemen animasi. -
callback
(objek): Jadual hash yang mengandungi satu set pilihan untuk lulus ke kaedah. Pilihan yang ada adalah seperti berikut: -
options
- (fungsi): Fungsi yang dipanggil apabila animasi selesai atau dihentikan tetapi tidak selesai.
-
always
(fungsi): Fungsi yang dilaksanakan selepas animasi selesai. -
complete
(fungsi): Fungsi yang dipanggil selepas animasi selesai. -
done
(String | Nombor): Sama seperti yang diterangkan di atas. -
duration
(String): Sama seperti yang diterangkan di atas. -
easing
(fungsi): Fungsi yang dilaksanakan apabila animasi gagal. -
fail
(fungsi): Fungsi yang dijalankan selepas setiap langkah animasi. Fungsi ini dipanggil hanya sekali setiap elemen animasi. -
progress
(Bolean): Jika animasi mesti diletakkan dalam barisan kesan (lebih lanjut mengenai ini kemudian). Nilai lalai adalah benar. -
queue
(objek): Jadual hash satu atau lebih sifat CSS yang nilainya adalah fungsi pelonggaran. -
specialEasing
(fungsi): Fungsi yang dilaksanakan pada permulaan animasi. -
start -
step
Istilah
digunakan untuk menggambarkan cara di mana kelajuan bingkai diproses dan bernyawa. Apabila pilihan -
.
queue
Penggunaan contoh animate()
Dalam bahagian ini, kami akan membina beberapa demonstrasi untuk membuat kuasa . Ingat bahawa pendekatan ini tidak sesuai untuk animasi yang sangat kompleks kerana isu -isu yang berkaitan dengan prestasi dan kelancaran animasi.
jalankan animasi tunggal
animate()
menjalankan animasi tunggal sangat mudah, hanya panggil kaedah sekali. Sebagai contoh, kita mungkin mahu memindahkan elemen dari satu sisi kotak ke yang lain. Untuk menggambarkan animasi ini, kami akan menetapkan dua elemen div, satu di dalam yang lain. Kami akan gaya mereka supaya bahagian dalam mempunyai latar belakang merah. Kod untuk melakukan ini adalah seperti berikut. Html:
<div class="rectangle"> <div class="square-small"></div> </div>
CSS:
.rectangle { width: 300px; height: 20px; display: block; position: relative; border: 1px solid black; margin: 20px 0; } .square-small { display: block; width: 20px; height: 20px; position: absolute; background-color: red; }
Menggunakan kuasa animate()
, kami memindahkan dataran kecil dari satu sisi ke yang lain:
$('.rectangle') .find('.square-small') .animate({ left: 280 }, 'slow');
Dalam kod ini, kami menyatakan bahawa atribut left
adalah satu -satunya atribut untuk animasi. Kami menetapkan tempoh animasi ke nilai pratetap perlahan (600 milisaat). Kami menggunakan nilai mutlak untuk memindahkan dalaman <div>
(dengan kelas .square-small
). Nilai ini berdasarkan lebar kontena yang kami tetapkan dengan kod CSS yang disenaraikan sebelum ini. Penyelesaian ini tidak begitu fleksibel kerana jika kita menukar lebar bekas, dalaman <div>
tidak akan sampai ke sisi lain (jika kita menetapkan lebar yang lebih luas pada bekas), atau akan melebihi (jika kita menetapkan lebar sempit ). Satu penyelesaian adalah untuk menetapkan nilai atribut <div>
berdasarkan pengiraan lebar semasa luaran dan dalaman left
seperti yang ditunjukkan di bawah:
left: $('.rectangle').width() - $('.rectangle').find('.square-small').width()
Jalankan pelbagai animasi dalam gelung
Melaksanakan pelbagai animasi pada satu elemen atau kumpulan elemen semudah menghubungkan panggilan ke animate()
. Dalam contoh ini, kita akan menggerakkan persegi kecil kerana ia bergerak di sepanjang perimeter dari jam tangan dalaman dataran besar (bukan segi empat tepat). Untuk membina demo ini, kami akan menggunakan tag berikut:
<div class="square-big"> <div class="square-small"></div> </div>
Untuk gaya, kita perlu menggunakan CSS yang sama yang kita gunakan untuk .square-small
serta gaya berikut untuk menetapkan gaya persegi paling luar:
.square-big { width: 300px; height: 300px; display: block; position: relative; border: 1px solid black; margin: 20px 0; }
Langkah terakhir ialah menulis kod JavaScript untuk menarik empat baris yang membentuk perimeter jam yang ideal. Bermula dari sudut kiri atas dataran paling luar, kita perlu menghidupkan persegi kecil sehingga ia mencapai sudut kanan bawah dataran besar. Kuadrat kecil mesti bergerak secara menyerong untuk menghasilkan kesan. Sebaik sahaja ia mencapai sudut kanan bawah, kita perlu memindahkannya ke sudut kiri bawah. Ia kemudiannya harus sampai ke sudut kanan atas dan akhirnya kembali ke kedudukan asalnya. Dalam memperkenalkan demo ini, kami berkata kami mahu melakukan animasi tak terhingga. Oleh itu, kita perlu mencari jalan untuk menjalankan keseluruhan animasi sekali lagi, apabila langkah terakhir selesai. Untuk melakukan ini, kita boleh membungkus panggilan ke empat panggilan yang dipautkan dalam satu fungsi, jadi kita mempunyai fungsi untuk rujukan. Kami kemudian boleh menggunakan panggilan balik animate()
dan Iife untuk menjalankan animasi sekali lagi apabila langkah terakhir selesai. Hasil menukarkan penerangan ini ke dalam kod adalah seperti berikut: complete
(function animation() { var options = { duration: 800, easing: 'linear' }; $('.square-big') .find('.square-small') .animate({ left: 280, top: 280 }, options) .animate({ left: 0 }, options) .animate({ left: 280, top: 0 }, options) .animate({ left: 0 }, $.extend(true, {}, options, { complete: function() { animation(); } })); })();Dalam kod di atas, sila ambil perhatian bagaimana kita menggunakan pembolehubah
supaya kita tidak perlu menulis parameter yang sama berulang kali apabila memanggil options
. Juga, kerana kami terpaksa menambah animate()
panggil balik kali terakhir kami menggunakan options
, kami menggunakan kaedah complete
jQuery. extend()
lebih banyak operasi panggil balik
Sebagai contoh terakhir kami, kami akan menetapkan sifat options
, start
dan complete
parameter progress
(parameter kedua borang kedua). Tujuannya adalah untuk melumpuhkan butang yang menjalankan animasi apabila diklik semasa animasi sedang berjalan. Selepas itu, kami ingin menunjukkan peratusan penyelesaian animasi. Untuk contoh ini, kami akan mengubah suai demo pertama yang kami bina. Menurut keterangan, kita perlu menambah butang dan elemen (kita akan menggunakan rentang) untuk memaparkan peratusan. Perubahan ini menghasilkan tag berikut:
<div class="rectangle"> <div class="square-small"></div> </div>
kita tidak perlu menambah lebih banyak gaya, jadi kita boleh melompat ke perbincangan kod JavaScript. Untuk menjalankan animasi hanya apabila butang diklik, kami perlu menambah pengendali ke acara klik butang. Di dalam pengendali, kami menggunakan kaedah JQuery's prop()
untuk melumpuhkan dan membolehkan butang berdasarkan sama ada animasi sedang berjalan atau siap. Akhirnya, kami menggunakan parameter kedua yang diluluskan kepada pengendali yang dilampirkan pada pilihan progress
untuk memaparkan peratusan penyempurnaan animasi. Kod yang dihasilkan kelihatan seperti ini:
.rectangle { width: 300px; height: 20px; display: block; position: relative; border: 1px solid black; margin: 20px 0; } .square-small { display: block; width: 20px; height: 20px; position: absolute; background-color: red; }
Kesimpulan
Artikel ini membincangkan apa yang boleh anda lakukan dengan kaedah animate()
jQuery. Kami memperkenalkan tandatangannya dan parameter yang diterima. Dalam artikel ini, kami meneroka tiga animasi contoh. Artikel ini hanya secara ringkas memperkenalkan kemungkinan animate()
. Malah, dengan sedikit kesabaran dan kreativiti, kita boleh mencipta animasi yang benar -benar kompleks dan indah.
Soalan Lazim (FAQ)
Apakah kaedah Animate JQuery dan bagaimana ia berfungsi?
Kaedah JQuery Animate adalah alat yang berkuasa yang membolehkan anda membuat animasi tersuai. Ia berfungsi secara beransur -ansur mengubah sifat CSS elemen, dengan tempoh yang ditentukan oleh anda. Anda boleh menghidupkan sebarang atribut CSS, tetapi anda mesti menentukan atribut menggunakan kes unta, seperti bukan marginLeft
. Kaedah Animate juga membolehkan anda menentukan fungsi pelonggaran yang mengawal kelajuan animasi, serta fungsi panggil balik yang dilaksanakan selepas animasi selesai. margin-left
JQuery menyediakan kaedah
untuk menghentikan animasi. Kaedah ini menghentikan animasi yang sedang berjalan pada elemen yang dipilih. Sekiranya anda ingin menjeda animasi, ia akan menjadi lebih rumit, kerana jQuery tidak menyediakan kaedah terbina dalam untuk ini. Walau bagaimanapun, anda boleh melakukannya dengan menggunakan plugin atau mengawal kemajuan animasi secara manual. stop()
Ya, anda boleh menggunakan kaedah Animate JQuery untuk menghidupkan pelbagai sifat CSS sekaligus. Anda hanya perlu menyertakan semua sifat untuk dihidupkan dalam objek
. Sebagai contoh, anda boleh menghidupkan lebar dan ketinggian elemen pada masa yang sama. properties
bagaimana saya menggunakan fungsi langkah dalam JQuery Animate?
Fungsi langkah dalam JQuery Animate adalah fungsi panggil balik yang dilaksanakan dalam setiap langkah animasi. Fungsi ini melewati dua parameter: now
, yang merupakan nilai semasa harta animasi; Anda boleh menggunakan fungsi langkah untuk membuat animasi kompleks atau animasi debug. fx
Tidak, kaedah animasi jQuery hanya boleh digunakan untuk sifat CSS angka. Jika anda cuba menghidupkan sifat bukan angka seperti warna atau warna latar belakang, ia tidak akan berfungsi. Walau bagaimanapun, anda boleh menghidupkan sifat -sifat ini menggunakan plugin seperti jQuery UI atau warna jQuery.
Bagaimana menggunakan JQuery Animate untuk menghubungkan animasi?
anda boleh menghubungkan animasi jQuery dengan hanya memanggil pelbagai kaedah animasi satu demi satu. JQuery akan melaksanakan animasi mengikut urutan panggilan. Ini dipanggil "beratur", dan ia adalah ciri yang kuat dari animasi jQuery.
Bolehkah saya menggunakan JQuery Animate untuk membuat kesan gelongsor?
Ya, anda boleh membuat kesan gelongsor menggunakan kaedah animate jQuery. Anda boleh melakukan ini dengan menghidupkan ketinggian atau lebar elemen. Walau bagaimanapun, jQuery juga menyediakan
, slideDown
dan slideUp
kaedah, yang lebih mudah digunakan jika anda hanya ingin membuat kesan gelongsor mudah. slideToggle
Terdapat pelbagai cara untuk membuat animasi jQuery anda lebih lancar. Salah satu cara ialah menggunakan fungsi pelonggaran yang mengawal kelajuan animasi. Pendekatan lain ialah menggunakan kaedah
, yang membolehkan penyemak imbas mengoptimumkan animasi. Anda juga boleh meningkatkan prestasi dengan meminimumkan bilangan operasi DOM dan menggunakan penukaran CSS jika mungkin. requestAnimationFrame
Ya, anda boleh menggunakan kaedah Animate JQuery pada satu set elemen. Apabila anda memanggil kaedah Animate pada objek jQuery dengan pelbagai elemen, animasi digunakan untuk semua elemen dalam koleksi.
Bagaimana untuk membuat kesan pudar menggunakan JQuery Animate?
anda boleh membuat kesan pudar menggunakan kaedah animate jQuery dengan menghidupkan atribut
. Walau bagaimanapun, jQuery juga menyediakan opacity
, fadeIn
, dan fadeOut
kaedah, yang lebih mudah digunakan jika anda hanya ingin membuat kesan pudar yang mudah. fadeToggle
Atas ialah kandungan terperinci Panduan untuk kaedah animate jQuery (). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

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

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Mekanisme pengumpulan sampah JavaScript secara automatik menguruskan memori melalui algoritma pembersihan tag untuk mengurangkan risiko kebocoran ingatan. Enjin melintasi dan menandakan objek aktif dari objek akar, dan tidak bertanda dianggap sebagai sampah dan dibersihkan. Sebagai contoh, apabila objek tidak lagi dirujuk (seperti menetapkan pembolehubah kepada null), ia akan dikeluarkan dalam pusingan seterusnya kitar semula. Punca kebocoran memori yang biasa termasuk: ① Pemasa atau pendengar peristiwa yang tidak jelas; ② Rujukan kepada pembolehubah luaran dalam penutupan; ③ Pembolehubah global terus memegang sejumlah besar data. Enjin V8 mengoptimumkan kecekapan kitar semula melalui strategi seperti kitar semula generasi, penandaan tambahan, kitar semula selari/serentak, dan mengurangkan masa menyekat benang utama. Semasa pembangunan, rujukan global yang tidak perlu harus dielakkan dan persatuan objek harus dihiasi dengan segera untuk meningkatkan prestasi dan kestabilan.

Terdapat tiga cara biasa untuk memulakan permintaan HTTP dalam node.js: Gunakan modul terbina dalam, axios, dan nod-fetch. 1. Gunakan modul HTTP/HTTPS terbina dalam tanpa kebergantungan, yang sesuai untuk senario asas, tetapi memerlukan pemprosesan manual jahitan data dan pemantauan ralat, seperti menggunakan https.get () untuk mendapatkan data atau menghantar permintaan pos melalui .write (); 2.AXIOS adalah perpustakaan pihak ketiga berdasarkan janji. Ia mempunyai sintaks ringkas dan fungsi yang kuat, menyokong async/menunggu, penukaran JSON automatik, pemintas, dan lain -lain. Adalah disyorkan untuk memudahkan operasi permintaan tak segerak; 3.Node-Fetch menyediakan gaya yang serupa dengan pengambilan penyemak imbas, berdasarkan janji dan sintaks mudah

Jenis data JavaScript dibahagikan kepada jenis primitif dan jenis rujukan. Jenis primitif termasuk rentetan, nombor, boolean, null, undefined, dan simbol. Nilai -nilai tidak berubah dan salinan disalin apabila memberikan nilai, jadi mereka tidak mempengaruhi satu sama lain; Jenis rujukan seperti objek, tatasusunan dan fungsi menyimpan alamat memori, dan pembolehubah menunjuk objek yang sama akan mempengaruhi satu sama lain. Typeof dan Instanceof boleh digunakan untuk menentukan jenis, tetapi memberi perhatian kepada isu -isu sejarah TypeOfNull. Memahami kedua -dua jenis perbezaan ini dapat membantu menulis kod yang lebih stabil dan boleh dipercayai.

Helo, pemaju JavaScript! Selamat datang ke berita JavaScript minggu ini! Minggu ini kami akan memberi tumpuan kepada: Pertikaian tanda dagangan Oracle dengan Deno, objek masa JavaScript baru disokong oleh pelayar, kemas kini Google Chrome, dan beberapa alat pemaju yang kuat. Mari mulakan! Pertikaian tanda dagangan Oracle dengan percubaan Deno Oracle untuk mendaftarkan tanda dagangan "JavaScript" telah menyebabkan kontroversi. Ryan Dahl, pencipta Node.js dan Deno, telah memfailkan petisyen untuk membatalkan tanda dagangan, dan dia percaya bahawa JavaScript adalah standard terbuka dan tidak boleh digunakan oleh Oracle

Rangka kerja JavaScript mana yang terbaik? Jawapannya ialah memilih yang paling sesuai mengikut keperluan anda. 1. REACT adalah fleksibel dan bebas, sesuai untuk projek sederhana dan besar yang memerlukan penyesuaian tinggi dan keupayaan seni bina pasukan; 2. Angular menyediakan penyelesaian lengkap, sesuai untuk aplikasi peringkat perusahaan dan penyelenggaraan jangka panjang; 3. Vue mudah digunakan, sesuai untuk projek kecil dan sederhana atau perkembangan pesat. Di samping itu, sama ada terdapat timbunan teknologi sedia ada, saiz pasukan, kitaran hayat projek dan sama ada SSR diperlukan juga faktor penting dalam memilih rangka kerja. Singkatnya, tidak ada kerangka terbaik, pilihan terbaik adalah yang sesuai dengan keperluan anda.

IIFE (Segera Dilanjutkan FunctionExpression) adalah ekspresi fungsi yang dilaksanakan dengan segera selepas definisi, digunakan untuk mengasingkan pembolehubah dan mengelakkan mencemarkan skop global. Ia dipanggil dengan membungkus fungsi dalam kurungan untuk menjadikannya ungkapan dan sepasang kurungan segera diikuti olehnya, seperti (fungsi () {/code/}) ();. Penggunaan terasnya termasuk: 1. Elakkan konflik berubah -ubah dan mencegah pertindihan penamaan antara skrip berganda; 2. Buat skop peribadi untuk menjadikan pembolehubah dalaman tidak kelihatan; 3. Kod modular untuk memudahkan permulaan tanpa mendedahkan terlalu banyak pembolehubah. Kaedah penulisan biasa termasuk versi yang diluluskan dengan parameter dan versi fungsi anak panah ES6, tetapi perhatikan bahawa ungkapan dan ikatan mesti digunakan.

Janji adalah mekanisme teras untuk mengendalikan operasi tak segerak dalam JavaScript. Memahami panggilan rantaian, pengendalian ralat dan gabungan adalah kunci untuk menguasai aplikasi mereka. 1. Panggilan rantai mengembalikan janji baru melalui .then () untuk merealisasikan persamaan proses tak segerak. Setiap .then () menerima hasil sebelumnya dan boleh mengembalikan nilai atau janji; 2. Pengendalian ralat harus menggunakan .catch () untuk menangkap pengecualian untuk mengelakkan kegagalan senyap, dan boleh mengembalikan nilai lalai dalam tangkapan untuk meneruskan proses; 3. Gabungan seperti janji.all () (berjaya hanya berjaya selepas semua kejayaan), janji.race () (penyempurnaan pertama dikembalikan) dan janji.allsettled () (menunggu semua penyelesaian)

CACHEAPI adalah alat yang disediakan oleh penyemak imbas kepada permintaan rangkaian cache, yang sering digunakan bersempena dengan ServiceWorker untuk meningkatkan prestasi laman web dan pengalaman luar talian. 1. Ia membolehkan pemaju menyimpan sumber secara manual seperti skrip, helaian gaya, gambar, dan lain -lain; 2. Ia boleh memadankan tindak balas cache mengikut permintaan; 3. Ia menyokong memotong cache tertentu atau membersihkan seluruh cache; 4. Ia boleh melaksanakan keutamaan cache atau strategi keutamaan rangkaian melalui perkhidmatan pekerja yang mendengar acara mengambil; 5. Ia sering digunakan untuk sokongan luar talian, mempercepat kelajuan akses berulang, sumber utama dan kandungan kemas kini latar belakang; 6. Apabila menggunakannya, anda perlu memberi perhatian kepada kawalan versi cache, sekatan penyimpanan dan perbezaan dari mekanisme caching HTTP.
