light-theme<\/code>\n<\/p> Kod JavaScript ujian pertama untuk sokongan API, kemudian mentakrifkan tetapan konfigurasi untuk ambang dan mesej pemberitahuan. Ia mengambil elemen audio dan melaksanakan fungsi API: kawalan main balik berasaskan jarak, penukaran tema berdasarkan tahap cahaya, dan pemantauan tahap bateri dengan pemberitahuan dan maklum balas getaran. Kod Lengkap tersedia di GitHub. body {\n max-width: 600px;\n margin: 0 auto;\n font-size: 20px;\n padding: 0 1em;\n}\n\n.dark-theme {\n background-color: #000000;\n color: #FFFFFF;\n}\n\n.normal-theme {\n background-color: #B8FFF7;\n color: #C53131;\n}\n\n.light-theme {\n background-color: #FFFFFF;\n color: #000000;\n}<\/pre>\n Kesimpulan: <\/strong> <\/p>\n Tutorial ini menunjukkan kuasa API JavaScript dalam mewujudkan aplikasi mudah alih yang kaya dengan ciri. Pengalaman pengguna yang dipertingkatkan mempamerkan potensi API ini untuk membina aplikasi fokus mudah alih yang menarik dan responsif. Repositori dan demo github disediakan untuk penjelajahan lanjut. <\/p>\n
Soalan Lazim (Soalan Lazim): <\/strong> (Soalan Lazim ini dikekalkan dari input asal, tetapi penempatan mereka diselaraskan untuk aliran dan kebolehbacaan yang lebih baik.)\n<\/p> Seksyen Soalan Lazim, menangani ciri senarai main, kawalan tersuai, respons, integrasi API Audio Web, bar kemajuan, kawalan volum dan bisu, gelung dan fungsi shuffle, dan butang muat turun, tetap tidak berubah dan boleh didapati dalam output asal. <\/p>"}
Rumah
hujung hadapan web
tutorial js
Membina pemain audio berkuasa javascript mudah alih
Membina pemain audio berkuasa javascript mudah alih
Feb 20, 2025 pm 12:57 PM
Saya peminat besar HTML5 dan JavaScript API, yang telah meneroka banyak, termasuk GetUsermedia, ucapan web, dan orientasi skrin API (dengan repositori GitHub yang berdedikasi). Artikel ini menunjukkan membina pemain audio JavaScript yang mesra mudah alih yang memanfaatkan beberapa API untuk pengalaman pengguna yang dipertingkatkan.
Ciri -ciri Utama:
Pemain audio JavaScript ini menggunakan cahaya ambien, kedekatan, status bateri, pemberitahuan web, dan API getaran untuk mencipta pengalaman mudah alih yang responsif dan menarik. Ia dibina dengan peningkatan progresif, berfungsi dengan betul walaupun API tertentu tidak disokong. Khususnya, ia menyesuaikan tema berdasarkan cahaya ambien, jeda/drama berdasarkan kedekatan, dan menguruskan main balik berdasarkan tahap bateri, memberitahu pengguna dan memberikan maklum balas haptik apabila perlu. Kod ini boleh didapati di GitHub, dan demo langsung disediakan.
Penggunaan API:
Pemain menggunakan API ini:
API cahaya ambien:
secara dinamik menyesuaikan tema laman web (gelap/cahaya) mengikut tahap cahaya ambien.
API Kekejaman: memainkan/menjeda audio berdasarkan pengesanan sensor kedekatan.
API Status Bateri Bateri : memantau tahap bateri dan menjeda audio apabila kritikal rendah.
Pemberitahuan Web API: memberi amaran kepada pengguna mengenai bateri dan jeda audio yang rendah.
API Getaran: memberikan maklum balas haptik untuk mengukuhkan pemberitahuan tahap bateri.
Tutorial menganggap kebiasaan dengan API ini. Pemain menggunakan elemen HTML5 asli sebagai sandaran, memaparkan mesej jika elemen tidak disokong.
Struktur HTML:
<audio></audio>
HTML adalah mudah: Penerangan ringkas, elemen
dengan kawalan asli diaktifkan ( atribut), pautan CSS Stylesheet, dan kemasukan fail JavaScript. pada mulanya mempunyai kelas .
<audio></audio>
controls
CSS Styling: body
normal-theme
CSS mentakrifkan gaya untuk
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Mobile Audio Player</title>
<meta name="description" content="APIs-powered Audio Player">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://ipnx.cn/link/1dfd06d3b151a21b879f3710d6b49786">
</head>
<body class="normal-theme">
<h1>APIs-powered Audio Player</h1>
<p>This demo showcases a simple APIs-powered audio player using the Proximity, Battery Status, Vibration, Web Notifications, and Ambient Light APIs.</p>
<audio id="audio" src="http://freshly-ground.com/data/audio/mpc/20090119%20-%20Untitled%20Groove.mp3" controls>
<p>Your browser doesn't support the <code>audio</code> element.</p>
</audio>
<??>
</body>
</html> dan tiga tema (
, , ), masing -masing dengan variasi warna latar belakang dan teks untuk kebolehbacaan optimum dalam keadaan pencahayaan yang berbeza.
body
dark-theme
logik javascript: normal-theme
light-theme
Kod JavaScript ujian pertama untuk sokongan API, kemudian mentakrifkan tetapan konfigurasi untuk ambang dan mesej pemberitahuan. Ia mengambil elemen audio dan melaksanakan fungsi API: kawalan main balik berasaskan jarak, penukaran tema berdasarkan tahap cahaya, dan pemantauan tahap bateri dengan pemberitahuan dan maklum balas getaran. Kod Lengkap tersedia di GitHub.
body {
max-width: 600px;
margin: 0 auto;
font-size: 20px;
padding: 0 1em;
}
.dark-theme {
background-color: #000000;
color: #FFFFFF;
}
.normal-theme {
background-color: #B8FFF7;
color: #C53131;
}
.light-theme {
background-color: #FFFFFF;
color: #000000;
}
Kesimpulan:
Tutorial ini menunjukkan kuasa API JavaScript dalam mewujudkan aplikasi mudah alih yang kaya dengan ciri. Pengalaman pengguna yang dipertingkatkan mempamerkan potensi API ini untuk membina aplikasi fokus mudah alih yang menarik dan responsif. Repositori dan demo github disediakan untuk penjelajahan lanjut.
Soalan Lazim (Soalan Lazim): (Soalan Lazim ini dikekalkan dari input asal, tetapi penempatan mereka diselaraskan untuk aliran dan kebolehbacaan yang lebih baik.)
Seksyen Soalan Lazim, menangani ciri senarai main, kawalan tersuai, respons, integrasi API Audio Web, bar kemajuan, kawalan volum dan bisu, gelung dan fungsi shuffle, dan butang muat turun, tetap tidak berubah dan boleh didapati dalam output asal.
Atas ialah kandungan terperinci Membina pemain audio berkuasa javascript mudah alih. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan Laman Web ini
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
Bagaimanakah pengumpulan sampah berfungsi di JavaScript?
Jul 04, 2025 am 12:42 AM
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.
Bagaimana membuat permintaan HTTP di node.js?
Jul 13, 2025 am 02:18 AM
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: Rujukan primitif vs
Jul 13, 2025 am 02:43 AM
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.
Objek Masa JavaScript, seseorang membina eactexe, laman web lebih cepat di Google Chrome, dll.
Jul 08, 2025 pm 02:27 PM
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
React vs angular vs vue: Rangka kerja JS mana yang terbaik?
Jul 05, 2025 am 02:24 AM
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.
Pemahaman dengan segera menggunakan Ekspresi Fungsi (Iife) dalam JavaScript
Jul 04, 2025 am 02:42 AM
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.
Mengendalikan Janji: Chaining, Pengendalian Kesalahan, dan Janji Gabungan di JavaScript
Jul 08, 2025 am 02:40 AM
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)
Apakah API cache dan bagaimana ia digunakan dengan pekerja perkhidmatan?
Jul 08, 2025 am 02:43 AM
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.
See all articles