javascript實(shí)現(xiàn)簡單加載隨機(jī)色方塊
更新時(shí)間:2015年12月25日 09:15:06 作者:微宇宙
這篇文章主要介紹了javascript實(shí)現(xiàn)簡單加載隨機(jī)色方塊的相關(guān)資料,感興趣的小伙伴們可以參考一下
用碎片加載小方塊實(shí)現(xiàn)簡單的隨機(jī)色塊,直接上代碼:
效果圖:
具體代碼:
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <meta charset="utf-8"> <title>koringz</title> <link rel="stylesheet" href="css/demo.css"> </head> <body> <div class="container"> <div class="main"> <div class="colorful"></div> </div> </div> </body> </html>
css代碼:
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; } html { font-size: 10px; -webkit-tap-highlight-color: transparent; } body { margin: 0; padding: 0; font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px; line-height: 1.42857143; color: #333; background-color: rgba(211,232,132,0.8); } .container { overflow: visible; } .main { position: relative; width: 90%; height:200px; margin:auto; } .colorful { overflow: visible; width: 100%; height: 100%; } .colorful > a { float: left; display: block; width: 50px; height: 50px; zoom:2; } .colorful > a:hover { -webkit-animation:infinite 2s ease-in-out start-roll; -moz-animation:infinite 2s ease-in-out start-roll; animation:infinite 2s ease-in-out start-roll; } @-webkit-keyframes start-roll{ 0% { -webkit-transform: rotate(0deg); /*chrome*/ -moz-transform: rotate(0deg); /*火狐*/ -ms-transform: rotate(0deg); /*IE*/ transform: rotate(0deg); -webkit-transition: opacity .3s linear; transition: opacity .3s linear; opacity: .5; filter: alpha(opacity=50); zoom:1; } 50% { -webkit-transform: rotate(180deg); /*chrome*/ -moz-transform: rotate(180deg); /*火狐*/ -ms-transform: rotate(180deg); /*IE*/ transform: rotate(180deg); -webkit-transition: opacity 1s linear; transition: opacity 1s linear; opacity: 1; filter: alpha(opacity=100); zoom:2; } 100% { -webkit-transform: rotate(360deg); /*chrome*/ -moz-transform: rotate(360deg); /*火狐*/ -ms-transform: rotate(360deg); /*IE*/ transform: rotate(360deg); -webkit-transition: opacity .3s linear; transition: opacity .3s linear; opacity: .5; filter: alpha(opacity=50); zoom:1; } } @-moz-keyframes start-roll{ 0% { -webkit-transform: rotate(0deg); /*chrome*/ -moz-transform: rotate(0deg); /*火狐*/ -ms-transform: rotate(0deg); /*IE*/ transform: rotate(0deg); -webkit-transition: opacity .3s linear; transition: opacity .3s linear; opacity: .5; filter: alpha(opacity=50); } 50% { -webkit-transform: rotate(180deg); /*chrome*/ -moz-transform: rotate(180deg); /*火狐*/ -ms-transform: rotate(180deg); /*IE*/ transform: rotate(180deg); -webkit-transition: opacity 1s linear; transition: opacity 1s linear; opacity: .5; filter: alpha(opacity=50); } 100% { -webkit-transform: rotate(360deg); /*chrome*/ -moz-transform: rotate(360deg); /*火狐*/ -ms-transform: rotate(360deg); /*IE*/ transform: rotate(360deg); -webkit-transition: opacity .3s linear; transition: opacity .3s linear; opacity: .5; filter: alpha(opacity=50); } } @keyframes start-roll{ 0% { -webkit-transform: rotate(0deg); /*chrome*/ -moz-transform: rotate(0deg); /*火狐*/ -ms-transform: rotate(0deg); /*IE*/ transform: rotate(0deg); -webkit-transition: opacity .3s linear; transition: opacity .3s linear; opacity: .5; filter: alpha(opacity=50); } 50% { -webkit-transform: rotate(180deg); /*chrome*/ -moz-transform: rotate(180deg); /*火狐*/ -ms-transform: rotate(180deg); /*IE*/ transform: rotate(180deg); -webkit-transition: opacity 1s linear; transition: opacity 1s linear; opacity: .5; filter: alpha(opacity=50); } 100% { -webkit-transform: rotate(360deg); /*chrome*/ -moz-transform: rotate(360deg); /*火狐*/ -ms-transform: rotate(360deg); /*IE*/ transform: rotate(360deg); -webkit-transition: opacity .3s linear; transition: opacity .3s linear; opacity: .5; filter: alpha(opacity=50); } }
js代碼:
(function (window) { var document = window.document; function on(elem, evtnm, eventhd) { var onevtnm = 'on' + evtnm; elem[onevtnm] = eventhd; } function grc() { var val = [], i = 0; while (++i <= 3) { val.push(Math.floor(Math.random() * 255)); } return 'rgb(' + val.join() + ')'; } function fbc() { var el = document.querySelectorAll('.colorful')[0], total = Math.floor(el.offsetWidth / 50) * Math.floor(el.offsetHeight / 50), df = document.createDocumentFragment(), a; while (total-- > 0) { a = document.createElement('a'); a.style.backgroundColor = grc(); df.appendChild(a); } el.appendChild(df); } on(window, 'load', function () { fbc(); }); })(window)
希望本文所述對大家學(xué)習(xí)javascript程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:
- JS延遲加載(setTimeout) JS最后加載
- Jquery.LazyLoad.js修正版下載,實(shí)現(xiàn)圖片延遲加載插件
- jquery getScript動(dòng)態(tài)加載JS方法改進(jìn)詳解
- JS實(shí)現(xiàn)圖片預(yù)加載無需等待
- js異步加載的三種解決方案
- 如何讓頁面加載完成后執(zhí)行js
- 頁面加載完成后再執(zhí)行JS的jquery寫法以及區(qū)別說明
- 使用jQuery動(dòng)態(tài)加載js腳本文件的方法
- 兩種方法實(shí)現(xiàn)在HTML頁面加載完畢后運(yùn)行某個(gè)js
- 頁面加載完后自動(dòng)執(zhí)行一個(gè)方法的js代碼
相關(guān)文章
webpack實(shí)現(xiàn)一個(gè)行內(nèi)樣式px轉(zhuǎn)vw的loader示例
這篇文章主要介紹了webpack實(shí)現(xiàn)一個(gè)行內(nèi)樣式px轉(zhuǎn)vw的loader示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-09-09uniapp實(shí)現(xiàn)微信H5掃碼功能的完整步驟
在uni-app官網(wǎng)上發(fā)現(xiàn)uni-app不支持H5掃碼功能,但是下面的提示說明可以通過微信的JS-SDK實(shí)現(xiàn)掃碼功能,下面這篇文章主要給大家介紹了關(guān)于uniapp實(shí)現(xiàn)微信H5掃碼功能的完整步驟,需要的朋友可以參考下2022-11-11微信小程序開發(fā)之實(shí)現(xiàn)一個(gè)跑步小程序
本文將開發(fā)一個(gè)簡易的微信跑步小程序,用到的方法是wx.onLocationChange,可以監(jiān)聽實(shí)時(shí)地理位置變化事件,感興趣的小伙伴可以了解一下2022-08-08JavaScript 類型轉(zhuǎn)換的詳細(xì)實(shí)現(xiàn)
本文主要介紹了JavaScript 類型轉(zhuǎn)換的詳細(xì)實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02