今天給大家?guī)淼陌噶惺莌tml5轉(zhuǎn)盤實(shí)例,可以直接拿來做抽獎(jiǎng)程序,有需要的朋友可以拿去使用,下面是案列代碼。
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>html5制作轉(zhuǎn)盤游戲 </title> <meta name="keywords" content=" html5制作轉(zhuǎn)盤游戲 " /> <meta name="description" content=" html5制作轉(zhuǎn)盤游戲 " /> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <link rel="stylesheet" href="css/kinerLottery.css"> <style> h1{ width: 100%; height: 3rem; line-height: 3rem; font-size: 1.8rem; color:#c60; text-align: center; font-weight: bolder; } </style> </head> <body> <h1>KinerLotter——大轉(zhuǎn)盤</h1> <div id="box"> <div class="outer KinerLottery KinerLotteryContent"><img src="./imgs/lotteryContent.png"></div> <!-- 大專盤分為三種狀態(tài):活動(dòng)未開始(no-start)、活動(dòng)進(jìn)行中(start)、活動(dòng)結(jié)束(completed),可通過切換class進(jìn)行切換狀態(tài),js會(huì)根據(jù)這3個(gè)class進(jìn)行匹配狀態(tài) --> <div class="inner KinerLotteryBtn start"></div> </div> <script src="js/zepto.min.js"></script> <script src="js/kinerLottery.js"></script> <script> /** * 根據(jù)轉(zhuǎn)盤旋轉(zhuǎn)角度判斷獲得什么獎(jiǎng)品 * @param deg * @returns {*} */ var whichAward = function(deg) { if ((deg > 330 && deg <= 360) || (deg > 0 && deg <= 30)) { //10M流量 return "三網(wǎng)通流量 10M"; } else if ((deg > 30 && deg <= 90)) { //IPhone 7 return "iPhone7"; } else if (deg > 90 && deg <= 150) { //30M流量 return "三網(wǎng)通流量 30M"; } else if (deg > 150 && deg <= 210) { //5元話費(fèi) return "話費(fèi)5元"; } else if (deg > 210 && deg <= 270) { //IPad mini 4 return "ipad mini4"; } else if (deg > 270 && deg <= 330) { //20元話費(fèi) return "話費(fèi)20元"; } } var KinerLottery = new KinerLottery({ rotateNum: 8, //轉(zhuǎn)盤轉(zhuǎn)動(dòng)圈數(shù) body: "#box", //大轉(zhuǎn)盤整體的選擇符或zepto對(duì)象 direction: 0, //0為順時(shí)針轉(zhuǎn)動(dòng),1為逆時(shí)針轉(zhuǎn)動(dòng) disabledHandler: function(key) { switch (key) { case "noStart": alert("活動(dòng)尚未開始"); break; case "completed": alert("活動(dòng)已結(jié)束"); break; } }, //禁止抽獎(jiǎng)時(shí)回調(diào) clickCallback: function() { //此處訪問接口獲取獎(jiǎng)品 function random() { return Math.floor(Math.random() * 360); } this.goKinerLottery(random()); }, //點(diǎn)擊抽獎(jiǎng)按鈕,再次回調(diào)中實(shí)現(xiàn)訪問后臺(tái)獲取抽獎(jiǎng)結(jié)果,拿到抽獎(jiǎng)結(jié)果后顯示抽獎(jiǎng)畫面 KinerLotteryHandler: function(deg) { alert("恭喜您獲得:" + whichAward(deg)); } //抽獎(jiǎng)結(jié)束回調(diào) }); </script> </body> </html>
相信看了這些案例你已經(jīng)掌握了方法,更多精彩請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
相關(guān)閱讀:
用Js操作HTTP的Cookie的實(shí)現(xiàn)步驟
Atas ialah kandungan terperinci html5制作轉(zhuǎn)盤的詳解及實(shí)例. 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)

HTML5, CSS dan JavaScript harus digabungkan dengan tag semantik, pesanan pemuatan yang munasabah dan reka bentuk decoupling. 1. Gunakan tag semantik HTML5, seperti meningkatkan kejelasan struktur dan penyelenggaraan, yang kondusif untuk SEO dan akses bebas penghalang; 2. CSS harus diletakkan, gunakan fail luaran dan berpecah oleh modul untuk mengelakkan gaya sebaris dan masalah pemuatan yang tertunda; 3. JavaScript disyorkan untuk diperkenalkan di hadapan, dan gunakan penangguhan atau async untuk memuat secara asynchronously untuk mengelakkan menyekat rendering; 4. Mengurangkan pergantungan yang kuat antara ketiga-tiga, tingkah laku memandu melalui atribut data dan status kawalan nama kelas, dan meningkatkan kecekapan kerjasama melalui spesifikasi penamaan bersatu. Kaedah ini dapat mengoptimumkan prestasi halaman dengan berkesan dan bekerjasama dengan pasukan.

Ia adalah elemen peringkat blok, sesuai untuk susun atur; Ia adalah elemen sebaris, sesuai untuk membungkus kandungan teks. 1. Secara eksklusif menduduki garis, lebar, ketinggian dan margin boleh ditetapkan, yang sering digunakan dalam susun atur struktur; 2. Tiada garis pecah, saiz ditentukan oleh kandungan, dan sesuai untuk gaya teks tempatan atau operasi dinamik; 3. Apabila memilih, ia harus dihakimi berdasarkan sama ada kandungan memerlukan ruang bebas; 4. Ia tidak boleh bersarang dan tidak sesuai untuk susun atur; 5. Keutamaan diberikan kepada penggunaan label semantik untuk meningkatkan kejelasan struktur dan kebolehcapaian.

HTML5introducednewinputtypesthatenhanceformfunctionalityanduserexperiencebyimprovingvalidation,UI,andmobilekeyboardlayouts.1.emailvalidatesemailaddressesandsupportsmultipleentries.2.urlchecksforvalidwebaddressesandtriggersURL-optimizedkeyboards.3.num

Untuk mendapatkan lokasi semasa pengguna, gunakan HTML5 GeolocationAPI. API ini memberikan maklumat seperti latitud dan longitud selepas kebenaran pengguna. Kaedah teras adalah getCurrentPosition (), yang memerlukan panggilan balik yang berjaya dan ralat untuk dikendalikan; Pada masa yang sama, perhatikan prasyarat HTTPS, mekanisme kebenaran pengguna dan pemprosesan kod ralat. ① Panggil GetCurrentPosition untuk mendapatkan kedudukan sekali, dan panggilan balik ralat akan dicetuskan jika gagal; ② Pengguna mesti membenarkannya, jika tidak, ia tidak dapat diperoleh dan mungkin tidak lagi diminta; ③ Pemprosesan ralat harus membezakan antara penolakan, tamat masa, lokasi tidak tersedia, dan sebagainya; ④ Dayakan ketepatan tinggi, menetapkan masa tamat, dan lain-lain, dan boleh dikonfigurasikan melalui parameter ketiga; ⑤ Persekitaran dalam talian mesti menggunakan HTTPS, jika tidak, ia mungkin dihadkan oleh penyemak imbas.

Perbezaan antara async dan menangguhkan adalah masa pelaksanaan skrip. Async membolehkan skrip dimuat turun selari dan dilaksanakan dengan segera selepas memuat turun, tanpa menjamin perintah pelaksanaan; Defer melaksanakan skrip dalam rangka selepas parsing HTML selesai. Kedua -duanya mengelakkan menyekat parsing HTML. Menggunakan Async sesuai untuk skrip mandiri seperti menganalisis kod; Defer sesuai untuk senario di mana anda perlu mengakses DOM atau bergantung pada skrip lain.

Kunci untuk menggunakan butang radio dalam HTML5 adalah untuk memahami bagaimana mereka berfungsi dan menyusun struktur kod dengan betul. 1. Atribut nama setiap butang radio mestilah sama untuk mencapai pemilihan yang saling eksklusif; 2. Gunakan tag label untuk meningkatkan kebolehcapaian dan klik pengalaman; 3. Adalah disyorkan untuk membungkus setiap pilihan dalam div atau label untuk meningkatkan kejelasan struktur dan kawalan gaya; 4. Tetapkan pilihan lalai melalui atribut yang diperiksa; 5. Nilai nilai harus ringkas dan bermakna, yang mudah untuk pemprosesan penyerahan bentuk; 6. Gaya ini boleh disesuaikan melalui CSS, tetapi fungsi perlu dipastikan normal. Menguasai perkara -perkara utama ini secara berkesan dapat mengelakkan masalah biasa dan meningkatkan keberkesanan penggunaan.

Perbezaan teras antara LocalStorage dan sessionStorage terletak pada kegigihan data dan skop. 1. Kitaran Hayat Data: Data LocalStorage disimpan untuk masa yang lama kecuali jika dibersihkan secara manual, dan data SesiStorage dibersihkan selepas menutup tab; 2. 3. Senario Penggunaan: LocalStorage sesuai untuk menyimpan data jangka panjang seperti keutamaan pengguna dan status log masuk, sessionStorage sesuai untuk data bentuk sementara atau proses sesi tunggal; 4. Konsistensi API: Dua Kaedah Operasi

Ya, ia adalah sebahagian daripada HTML5, tetapi penggunaannya secara beransur -ansur menurun dan kontroversi. Digunakan untuk menggabungkan tajuk utama dengan sari kata supaya hanya tahap tertinggi tajuk yang dikenalpasti dalam garis besar dokumen; Sebagai contoh, tajuk utama dan sarikata boleh dibungkus untuk menunjukkan bahawa mereka hanya tajuk tambahan daripada tajuk bab bebas; Walau bagaimanapun, sebab -sebab mengapa mereka tidak lagi digunakan secara meluas termasuk: 1. Pembaca penyemak imbas dan skrin adalah sokongan yang tidak konsisten untuk mereka, 2. Terdapat alternatif yang lebih mudah seperti menggunakan CSS untuk mengawal gaya, 3. Walaupun demikian, ia masih boleh dipertimbangkan di laman web atau dokumen dengan keperluan semantik yang tinggi; Walaupun dalam kebanyakan kes, pemaju cenderung menggunakan satu, menguruskan gaya melalui CSS dan mengekalkan tahap tajuk yang jelas.
