<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="keywords" content="Amazon" /><meta name="description" content="Amazon.com" /><meta name="apple-touch-fullscreen" content="YES" />
<meta name="viewport" content="format-detection=no,initial-scale=1.0,maximum-scale=1.0,user-scalable=0,width=device-width" />
<title>Happy shopping</title>
<script src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<style>
.bd-rd-sw {border-radius: 6px; box-shadow: 0 1px 3px rgba(34, 25, 25, 0.4);}
.hidden {display: none;}
.loading {background-color: #DFDFDF; padding: 20px; position: fixed; left: 50%; top: 20%; z-index: 999;}
.overlay {background-color: #DFDFDF; height: 100%; opacity: 0.6; position: absolute; width:100%;}
</style>
</head>
<body>
<script type="text/javascript">
var UI = (function() {
function ProgressWidget(canvasId) {
var CIRCLE_COUNT = 5;
var CIRCLE_OFFSET = 10;
var CIRCLE_RADIUS = 5;
var CIRCLE_LINE = 1;
var COLOR_NORMAL = '#FFFFFF';
var COLOR_SELECTED = '#5995BF';
var DOUBLE_PI = Math.PI * 2;
var INTERVAL_TIME = 300;
var LINE_WIDTH = 1;
var START_POINT = {x: 10, y: 15};
// create DOM objects
var front = $("#loading");
if (front.length == 0) {
front = $("<div class='loading bd-sw hidden' id='loading'></div>");
$("body").append(front);
}
var canvas = $("#progressCanvas");
if (canvas.length == 0) {
canvas = $("<canvas id='progressCanvas' width='150' height='30'></canvas>");
front.append(canvas);
var w = front.width() / 2;
front.css('margin-left', -1 * w);
}
var _count = 0;
var _drawContext = null;
var _drawArea = document.getElementById('progressCanvas');
if (_drawArea && _drawArea.getContext) {
_drawContext = _drawArea.getContext('2d');
}
var _task = null;
function draw() {
_drawContext.clearRect(0, 0, _drawArea.clientWidth, _drawArea.clientHeight);
_drawContext.lineWidth = 1;
var vx = START_POINT.x, vy = START_POINT.y;
var radius = CIRCLE_RADIUS;
var c = _count % CIRCLE_COUNT;
for (var j = 0; j < CIRCLE_COUNT; j++) {
_drawContext.fillStyle = j == c ? COLOR_SELECTED : COLOR_NORMAL;
_drawContext.beginPath();
_drawContext.arc(vx, vy, radius, 0, DOUBLE_PI, true);
_drawContext.fill();
_drawContext.closePath();
radius += 2;
vx += CIRCLE_OFFSET + radius * 2;
}
_count++;
}
this.hide = function() {
front.fadeOut();
if (_task != null) {
clearInterval(_task);
_task == null;
}
};
this.isRunning = function() {
return front.is(':visible');
};
this.show = function(message) {
if (_drawContext == null) {
return;
}
_task = setInterval(draw, INTERVAL_TIME);
front.show();
};
} // Object - ProgressWidget
return {
'getLoadingWidget': function() { return new ProgressWidget(); }
};
})();
var loading = UI.getLoadingWidget();
loading.show();
</script>
</body>
</html>
分享到:
相关推荐
在这个特定的案例中,"HTML5 Canvas 3D跳动Loading加载动画-可调节参数"是一个利用Canvas API创建的3D加载动画,其特点是可以根据需求调整动画参数,提供更个性化的用户体验。 首先,我们需要了解HTML5 Canvas的...
总的来说,通过Canvas API,我们可以创建各种复杂的加载动画,发光loading动画只是其中之一。利用JavaScript的灵活性和Canvas的绘图能力,开发者可以构建出引人入胜的交互式用户体验。在实际项目中,可以根据需求...
这是一款基于HTML5 Canvas实现的发光Loading加载动画特效源码。Loading旋转图标是在canvas画布上绘制的,整个loading动画是发光3D的视觉效果,相较于以往的loading动画特效,这款特效更显炫目华丽!
"Canvas实现超酷Loading动画源码"这个项目就是利用Canvas API来创建一种独特的加载动画。 首先,我们需要了解Canvas的基本概念。Canvas是一个基于矢量图形的画布,通过JavaScript代码控制,可以进行图像的绘制、...
在本压缩包“Canvas 发光loading动画.zip”中,我们主要关注的是JavaScript(JS)的Canvas API应用,特别是在创建动态视觉效果方面的技巧。Canvas是HTML5的一个重要特性,它允许我们在网页上绘制图形,实现丰富的...
Canvas制作圆形进度条Loading效果
"Canvas圆形进度条Loading代码.zip"这个压缩包包含了一种利用JavaScript和Canvas API实现的圆形进度加载动画。这种动画常用于网页加载过程中,提供用户反馈,展示数据加载的进度。 首先,我们要理解Canvas的基本...
"HTML5基于Canvas实现超酷Loading动画特效源码"这一项目,就是利用Canvas的强大功能来创建一个吸引用户的加载动画。 Canvas是HTML5中的一个二维绘图上下文,通过JavaScript可以实现各种复杂的图形和动画。在这个...
在本主题中,我们将深入探讨如何使用HTML5 Canvas来实现一个发光的圆形加载进度条(Loading动画)。 首先,我们需要理解Canvas的基本结构。在HTML文档中,我们通过`<canvas>`标签创建一个画布。例如: ```html ...
这次我们来看一款非常酷的Loading动画加载效果,和纯CSS3实现齿轮Loading加载动画类似,也是利用几何的特性来模拟的,它是一些类似旋转的动画效果。另外,关于Loading动画,我们也可以看看html5tricks上的Loading...
之前我们分享过很多基于jQuery和HTML5的Loading加载动画,比如这款HTML5 Canvas发光Loading动画就是基于Canvas的。今天我们要分享另外一款基于HTML5 Canvas的液体流动样式Loading加载动画,这款Loading动画在加载时...
内容概要:canvas案例,loading动画。加载动画。 实现技术:htm+js实现。双击浏览器打开即可看效果 能学到什么:canvas技术 适用人群: 前端canvas学习新手 阅读建议:支持canvas的浏览器
"Drawing Text in Canvas Using Javascript.zip"这个压缩包很可能包含了一个教程或者示例代码,教导如何在Canvas画布上绘制文本。在本文中,我们将深入探讨JavaScript中的Canvas API,特别是如何利用它来绘制文字。 ...
Loading"中起到辅助作用,例如设置Canvas的样式、定位,或者通过CSS动画调整非Canvas元素的样式以配合加载效果。 在压缩包内的"html5-canvas-shine-loading"文件很可能是源代码,包括HTML文件(包含`<canvas>`元素...
包含的有:...当浏览器不支持Canvas时,将采用Flashcanvas或ExplorerCanvas技术代替实现。以下浏览器能够很好的支持该脚本:Firefox 3.5+, Google Chrome, Opera新的版本, IE9以上的浏览器。
ec-canvas 实现echart图表显示ec-canvas 实现echart图表显示ec-canvas 实现echart图表显示ec-canvas 实现echart图表显示ec-canvas 实现echart图表显示ec-canvas 实现echart图表显示ec-canvas 实现echart图表显示ec-...
html2canvas是一款强大的JavaScript库,能够将HTML元素转换成Canvas图像。它不依赖于服务器端的渲染,完全在客户端完成,这对需要截图网页或网页元素的场景非常有用。html2canvas支持各种浏览器,包括Firefox 3.5+、...
这个效果不仅能够为网页增添视觉吸引力,而且展示了Canvas和CSS的强大结合。以下是对实现这一效果所需技术的详细解释。 首先,让我们了解什么是Canvas。Canvas是HTML5引入的一个绘图元素,允许开发者在网页上动态...
本知识点主要聚焦于如何利用Canvas实现一个圆形进度条的Loading动画效果。 首先,我们需要创建一个HTML文件并在其中设置一个Canvas元素。HTML代码可能如下所示: ```html <!DOCTYPE html> <title>Canvas圆形...
本话题主要围绕"Canvas圆形进度条Loading代码"这一主题展开,我们将深入探讨如何利用Canvas来实现一个美观且实用的圆形进度加载动画。 首先,我们要了解Canvas的基本结构。Canvas是一个矩形区域,在这个区域内,...