188 lines
6.5 KiB
HTML
188 lines
6.5 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="zh">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>基于HTML5 canvas的仪表盘插件|DEMO5_jQuery之家-自由分享jQuery、html5、css3的插件库</title>
|
|
<link rel="stylesheet" type="text/css" href="css/normalize.css" />
|
|
<link rel="stylesheet" type="text/css" href="css/htmleaf-demo.css">
|
|
<style type="text/css">
|
|
body {
|
|
padding: 0;
|
|
margin: 0;
|
|
background: #fff
|
|
}
|
|
.btn-container{
|
|
padding: 1em 0;
|
|
text-align: center;
|
|
}
|
|
.container{
|
|
width: 700px;
|
|
margin: 50px auto;
|
|
}
|
|
</style>
|
|
<!--[if IE]>
|
|
<script src="http://cdn.bootcss.com/html5shiv/3.7.3/html5shiv.min.js"></script>
|
|
<![endif]-->
|
|
</head>
|
|
<body>
|
|
<div class="htmleaf-container">
|
|
<header class="htmleaf-header">
|
|
<h1>基于HTML5 canvas的仪表盘插件 <span>Canvas Based HTML5 Gauge Library</span></h1>
|
|
<div class="htmleaf-links">
|
|
<a class="htmleaf-icon icon-htmleaf-home-outline" href="http://www.htmleaf.com/" title="jQuery之家" target="_blank"><span> jQuery之家</span></a>
|
|
<a class="htmleaf-icon icon-htmleaf-arrow-forward-outline" href="http://www.htmleaf.com/html5/html5-canvas/201609294051.html" title="返回下载页" target="_blank"><span> 返回下载页</span></a>
|
|
</div>
|
|
<div class="htmleaf-demo center">
|
|
<a href="index.html">radial</a>
|
|
<a href="radial-component.html">radial-component</a>
|
|
<a href="linear-component.html">linear-component</a>
|
|
<a href="issue-63.html">issue-63</a>
|
|
<a href="async.html" class="current">async</a>
|
|
<a href="scripted.html">scripted</a>
|
|
</div>
|
|
</header>
|
|
<div class="btn-container">
|
|
<button onclick="animateGauges()">Animate</button>
|
|
<button onclick="stopGaugesAnimation()">Stop animation</button>
|
|
</div>
|
|
<div class="container">
|
|
<canvas data-type="radial-gauge"
|
|
data-width="300"
|
|
data-height="300"
|
|
data-min-value="0"
|
|
data-max-value="360"
|
|
data-major-ticks="N,NE,E,SE,S,SW,W,NW,N"
|
|
data-minor-ticks="22"
|
|
data-ticks-angle="360"
|
|
data-start-angle="180"
|
|
data-stroke-ticks="false"
|
|
data-highlights="false"
|
|
data-color-plate="#33a"
|
|
data-color-major-ticks="#f5f5f5"
|
|
data-color-minor-ticks="#ddd"
|
|
data-color-numbers="#ccc"
|
|
data-color-needle="rgba(240, 128, 128, 1)"
|
|
data-color-needle-end="rgba(255, 160, 122, .9)"
|
|
data-value-box="false"
|
|
data-value-text-shadow="false"
|
|
data-color-circle-inner="#fff"
|
|
data-color-needle-circle-outer="#ccc"
|
|
data-needle-circle-size="15"
|
|
data-needle-circle-outer="false"
|
|
data-animation-rule="linear"
|
|
data-needle-type="line"
|
|
data-needle-start="75"
|
|
data-needle-end="99"
|
|
data-needle-width="3"
|
|
data-borders="true"
|
|
data-border-inner-width="0"
|
|
data-border-middle-width="0"
|
|
data-border-outer-width="10"
|
|
data-color-border-outer="#ccc"
|
|
data-color-border-outer-end="#ccc"
|
|
data-color-needle-shadow-down="#222"
|
|
data-border-shadow-width="0"
|
|
data-animation-target="plate"
|
|
data-units="ᵍ"
|
|
data-title="DIRECTION"
|
|
data-font-title-size="19"
|
|
data-color-title="#f5f5f5"
|
|
data-animation-duration="1500"
|
|
data-value="45"
|
|
data-animate-on-init="true"
|
|
></canvas>
|
|
|
|
<canvas id="another-gauge"></canvas>
|
|
</div>
|
|
<div class="related">
|
|
<h3>如果你喜欢这个插件,那么你可能也喜欢:</h3>
|
|
<a href="http://www.htmleaf.com/jQuery/Chart/201504211714.html">
|
|
<img src="related/1.jpg" width="300" alt="jQuery高质量飞行仪表指示器插件"/>
|
|
<h3>jQuery高质量飞行仪表指示器插件</h3>
|
|
</a>
|
|
<a href="http://www.htmleaf.com/jQuery/Layout-Interface/201510202686.html">
|
|
<img src="related/2.jpg" width="300" alt="精美时尚的jQuery动态仪表盘插件"/>
|
|
<h3>精美时尚的jQuery动态仪表盘插件</h3>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
|
|
<script>
|
|
function initScriptedGauges() {
|
|
new RadialGauge({
|
|
renderTo: 'another-gauge',
|
|
width: 300,
|
|
height: 300,
|
|
units: 'Km/h',
|
|
title: false,
|
|
value: 0,
|
|
minValue: 0,
|
|
maxValue: 220,
|
|
majorTicks: [
|
|
'0','20','40','60','80','100','120','140','160','180','200','220'
|
|
],
|
|
minorTicks: 2,
|
|
strokeTicks: false,
|
|
highlights: [
|
|
{ from: 0, to: 50, color: 'rgba(0,255,0,.15)' },
|
|
{ from: 50, to: 100, color: 'rgba(255,255,0,.15)' },
|
|
{ from: 100, to: 150, color: 'rgba(255,30,0,.25)' },
|
|
{ from: 150, to: 200, color: 'rgba(255,0,225,.25)' },
|
|
{ from: 200, to: 220, color: 'rgba(0,0,255,.25)' }
|
|
],
|
|
colorPlate: '#222',
|
|
colorMajorTicks: '#f5f5f5',
|
|
colorMinorTicks: '#ddd',
|
|
colorTitle: '#fff',
|
|
colorUnits: '#ccc',
|
|
colorNumbers: '#eee',
|
|
colorNeedle: 'rgba(240, 128, 128, 1)',
|
|
colorNeedleEnd: 'rgba(255, 160, 122, .9)',
|
|
valueBox: true,
|
|
animationRule: 'bounce',
|
|
animationDuration: 500
|
|
}).draw();
|
|
}
|
|
|
|
if (!Array.prototype.forEach) {
|
|
Array.prototype.forEach = function(cb) {
|
|
var i = 0, s = this.length;
|
|
for (; i < s; i++) {
|
|
cb && cb(this[i], i, this);
|
|
}
|
|
}
|
|
}
|
|
|
|
document.fonts && document.fonts.forEach(function(font) {
|
|
font.loaded.then(function() {
|
|
if (font.family.match(/Led/)) {
|
|
document.gauges.forEach(function(gauge) {
|
|
gauge.update();
|
|
});
|
|
}
|
|
});
|
|
});
|
|
|
|
var timers = [];
|
|
|
|
function animateGauges() {
|
|
document.gauges.forEach(function(gauge) {
|
|
timers.push(setInterval(function() {
|
|
gauge.value = Math.random() *
|
|
(gauge.options.maxValue - gauge.options.minValue) / 4 +
|
|
gauge.options.minValue / 4;
|
|
}, gauge.animation.duration + 50));
|
|
});
|
|
}
|
|
|
|
function stopGaugesAnimation() {
|
|
timers.forEach(function(timer) {
|
|
clearInterval(timer);
|
|
});
|
|
}
|
|
</script>
|
|
<script async src="js/gauge.min.js" onload="initScriptedGauges()"></script>
|
|
</body>
|
|
</html> |