用碎片加载小方块实现简单的随机色块,直接上代码:
效果图:
具体代码:
<!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)
希望本文所述对大家学习javascript程序设计有所帮助。
标签:
javascript,加载
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“javascript实现简单加载随机色方块”评论...
更新动态
2024年05月10日
2024年05月10日
- 群星《妖神令 影视原声专辑》[320K/MP3][85.23MB]
- 逆水寒手游五子棋第二十三关怎么过 逆水寒手游残局攻略大全
- 逆水寒手游五子棋第二十二关怎么过 逆水寒手游残局攻略大全
- 欢乐钓鱼大师最稀有的鱼是什么 欢乐钓鱼大师最稀有的鱼攻略
- ABC唱片-《蔡琴.三十周年纪念版》6N纯银镀膜[WAV+CUE]
- ABC唱片-《汉斯.德斯辛克.心中布鲁斯》6N纯银镀膜[WAV+CUE]
- 群星《DJ·夜色魅影HQ》头版限量[低速原抓WAV+CUE]
- 《如龙》桐生声优被警察拦下盘问:你有犯罪记录吗?
- 游族2023年净利润0.91亿元 《少年西游记2》即将公测
- 曝快手北京游戏事业部全数被裁 项目测试数据未达标
- 李雨寰.2012-我可是天使【有凰音乐】【WAV+CUE】
- 刘美君.1991-听我细诉【BMG】【WAV+CUE】
- 群星.2016-滚石爱情故事3CD【滚石】【WAV+CUE】
- 欢乐钓鱼大师怎么解锁全地图 欢乐钓鱼大师全地图解锁方法
- 欢乐钓鱼大师锦标赛在哪里进 欢乐钓鱼大师锦标赛入口位置介绍