服務(wù)項目:網(wǎng)站建設(shè)、仿站、程序開發(fā)、APP開發(fā)設(shè)計、移動網(wǎng)站開發(fā)設(shè)計、企業(yè)網(wǎng)站設(shè)計、電子商務(wù)網(wǎng)站開發(fā)、網(wǎng)站維護、網(wǎng)站推廣、UX/UI 、HTML5、CSS3、JS / Jquery ...
          四川浚浚科技有限公司
          四川浚浚科技有限公司 (開發(fā)設(shè)計官網(wǎng))TEL : 15308000360 / QQ : 38585404

          您的位置:首頁 > 技術(shù)經(jīng)驗 > 前端開發(fā) > 正文

          HTML5進度條特效
          技術(shù)支持服務(wù)電話:15308000360 【7x24提供運維服務(wù),解決各類系統(tǒng)/軟硬件疑難技術(shù)問題】

          這篇文章主要介紹了HTML5進度條特效,需要的朋友可以參考下

          請使用支持HTML5的瀏覽器查看本特效

          <!DOCTYPE html>
          <html>
          <head>
          <meta charset='UTF-8'>
          <title>HTML5有特色的進度條</title>
          <base target="_blank" />
          <style>
          body {
          background: #111;
          color:White;
          }
          a{color:White;}
          canvas {
          background: #111;
          border: 1px solid #171717;
          display: block;
          left: 50%;
          margin: -51px 0 0 -201px;
          position: absolute;
          top: 50%;
          }
          </style>
          </head>
          <body>
          <script type="text/javascript">
          /*==============================================*/
          /* Light Loader
          /*==================================================*/
          var lightLoader = function (c, cw, ch) {
          var _this = this;
          this.c = c;
          this.ctx = c.getContext('2d');
          this.cw = cw;
          this.ch = ch;
          this.loaded = 0;
          this.loaderSpeed = .6;
          this.loaderHeight = 10;
          this.loaderWidth = 310;
          this.loader = {
          x: (this.cw / 2) - (this.loaderWidth / 2),
          y: (this.ch / 2) - (this.loaderHeight / 2)
          };
          this.particles = [];
          this.particleLift = 180;
          this.hueStart = 0
          this.hueEnd = 120;
          this.hue = 0;
          this.gravity = .15;
          this.particleRate = 4;
          /*========================================================*/
          /* Initialize
          /*========================================================*/
          this.init = function () {
          this.loop();
          };
          /*========================================================*/
          /* Utility Functions
          /*========================================================*/
          this.rand = function (rMi, rMa) { return ~ ~((Math.random() * (rMa - rMi + 1)) + rMi); };
          this.hitTest = function (x1, y1, w1, h1, x2, y2, w2, h2) { return !(x1 + w1 < x2 || x2 + w2 < x1 || y1 + h1 < y2 || y2 + h2 < y1); };
          /*========================================================*/
          /* Update Loader
          /*========================================================*/
          this.updateLoader = function () {
          if (this.loaded < 100) {
          this.loaded += this.loaderSpeed;
          } else {
          this.loaded = 0;
          }
          };
          /*========================================================*/
          /* Render Loader
          /*========================================================*/
          this.renderLoader = function () {
          this.ctx.fillStyle = '#000';
          this.ctx.fillRect(this.loader.x, this.loader.y, this.loaderWidth, this.loaderHeight);
          this.hue = this.hueStart + (this.loaded / 100) * (this.hueEnd - this.hueStart);
          var newWidth = (this.loaded / 100) * this.loaderWidth;
          this.ctx.fillStyle = 'hsla(' + this.hue + ', 100%, 40%, 1)';
          this.ctx.fillRect(this.loader.x, this.loader.y, newWidth, this.loaderHeight);
          this.ctx.fillStyle = '#222';
          this.ctx.fillRect(this.loader.x, this.loader.y, newWidth, this.loaderHeight / 2);
          };
          /*========================================================*/
          /* Particles
          /*========================================================*/
          this.Particle = function () {
          this.x = _this.loader.x + ((_this.loaded / 100) * _this.loaderWidth) - _this.rand(0, 1);
          this.y = _this.ch / 2 + _this.rand(0, _this.loaderHeight) - _this.loaderHeight / 2;
          this.vx = (_this.rand(0, 4) - 2) / 100;
          this.vy = (_this.rand(0, _this.particleLift) - _this.particleLift * 2) / 100;
          this.width = _this.rand(1, 4) / 2;
          this.height = _this.rand(1, 4) / 2;
          this.hue = _this.hue;
          };
          this.Particle.prototype.update = function (i) {
          this.vx += (_this.rand(0, 6) - 3) / 100;
          this.vy += _this.gravity;
          this.x += this.vx;
          this.y += this.vy;
          if (this.y > _this.ch) {
          _this.particles.splice(i, 1);
          }
          };
          this.Particle.prototype.render = function () {
          _this.ctx.fillStyle = 'hsla(' + this.hue + ', 100%, ' + _this.rand(50, 70) + '%, ' + _this.rand(20, 100) / 100 + ')';
          _this.ctx.fillRect(this.x, this.y, this.width, this.height);
          };
          this.createParticles = function () {
          var i = this.particleRate;
          while (i--) {
          this.particles.push(new this.Particle());
          };
          };
          this.updateParticles = function () {
          var i = this.particles.length;
          while (i--) {
          var p = this.particles[i];
          p.update(i);
          };
          };
          this.renderParticles = function () {
          var i = this.particles.length;
          while (i--) {
          var p = this.particles[i];
          p.render();
          };
          };</p> <p>/*========================================================*/
          /* Clear Canvas
          /*========================================================*/
          this.clearCanvas = function () {
          this.ctx.globalCompositeOperation = 'source-over';
          this.ctx.clearRect(0, 0, this.cw, this.ch);
          this.ctx.globalCompositeOperation = 'lighter';
          };
          /*========================================================*/
          /* Animation Loop
          /*========================================================*/
          this.loop = function () {
          var loopIt = function () {
          requestAnimationFrame(loopIt, _this.c);
          _this.clearCanvas();
          _this.createParticles();
          _this.updateLoader();
          _this.updateParticles();
          _this.renderLoader();
          _this.renderParticles();
          };
          loopIt();
          };
          };
          /*========================================================*/
          /* Check Canvas Support
          /*========================================================*/
          var isCanvasSupported = function () {
          var elem = document.createElement('canvas');
          return !!(elem.getContext && elem.getContext('2d'));
          };
          /*========================================================*/
          /* Setup requestAnimationFrame
          /*========================================================*/
          var setupRAF = function () {
          var lastTime = 0;
          var vendors = ['ms', 'moz', 'webkit', 'o'];
          for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {
          window.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];
          window.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame'];
          };
          if (!window.requestAnimationFrame) {
          window.requestAnimationFrame = function (callback, element) {
          var currTime = new Date().getTime();
          var timeToCall = Math.max(0, 16 - (currTime - lastTime));
          var id = window.setTimeout(function () { callback(currTime + timeToCall); }, timeToCall);
          lastTime = currTime + timeToCall;
          return id;
          };
          };
          if (!window.cancelAnimationFrame) {
          window.cancelAnimationFrame = function (id) {
          clearTimeout(id);
          };
          };
          };
          /*========================================================*/
          /* Define Canvas and Initialize
          /*========================================================*/
          if (isCanvasSupported) {
          var c = document.createElement('canvas');
          c.width = 400;
          c.height = 100;
          var cw = c.width;
          var ch = c.height;
          document.body.appendChild(c);
          var cl = new lightLoader(c, cw, ch);
          setupRAF();
          cl.init();
          }
          </script>
          <div style="position:absolute; top: 0;width:100%">
          <div class="footer-banner" style="width:728px;margin:10px auto;color:White">
          HTML5進度條
          請使用支持HTML5的瀏覽器查看本頁</div>
          </div>
          </body>
          </html>
          



          上一篇:HTML 標(biāo)簽解釋大全
          下一篇:一個不錯的html 打印代碼支持翻頁

          相關(guān)熱詞搜索:html5
          主站蜘蛛池模板: 日本在线高清版卡免v| 精品福利视频导航| 欧美日韩在线国产| 国产精品无码无卡无需播放器 | 国产一卡2卡3卡四卡精品一信息| 中文字幕天堂网| 欧美日韩视频在线播放| 国产午夜精品一区二区| 东北大坑第二部txt| 极品美女一级毛片免费| 国产精品第八页| 国产亚洲精品精品精品| 一级毛片免费播放| 波多野结衣种子网盘| 国产真实乱对白精彩| 中文字幕亚洲色图| 欧美黑人巨大videos极品视频| 国产欧美一区二区三区视频在线观看 | 亚洲精品无码久久久久YW| 亚洲2022国产成人精品无码区 | 污网站视频在线观看| 又粗又硬又黄又爽的免费视频| 99精品国产高清一区二区| 欧美成人免费tv在线播放| 欧美成人香蕉网在线观看| 午夜视频十八嗯嗯啊免费| 黄色大片视频网站| 宅男66lu国产乱在线观看| 亚洲国产精品毛片AV不卡在线| 贵妇的脚奴视频vk| 明星造梦一区二区| 手机亚洲第一页| 亚洲熟女综合一区二区三区| 高级秘密俱乐部的娇妻| 天堂网在线资源www最新版| 五月婷婷伊人网| 波多野结衣69xx| 免费看的黄网站| 进进出出稚嫩娇小狭窄| 我爱我色成人网| 国产午夜福利在线观看红一片 |