HTML5计时器小例子

2020-04-22 07:46:37易采站长站整理

html:


<!DOCTYPE html>
<html lang=”en”>
<head>
<meta charset=”utf-8″>
<!– Always force latest IE rendering engine (even in intranet) & Chrome Frame
Remove this if you use the .htaccess –>
<meta http-equiv=”X-UA-Compatible” content=”IE=edge,chrome=1″>
<title>HTML5 Timer for work-relax balance</title>
<meta name=”description” content=””>
<meta name=”author” content=”kevin”>
<meta name=”viewport” content=”width=device-width; initial-scale=1.0″>
<!– Replace favicon.ico & apple-touch-icon.png in the root of your domain and delete these references –>
<link rel=”shortcut icon” href=”/favicon.ico”/>
<link rel=”apple-touch-icon” href=”/apple-touch-icon.png”/>
<link rel=”stylesheet” type=”text/css” href=”css/style.css”>
<script>
countDownSeconds = 60;
var handle = null;
//window load
function onLoadWindow() {
aCanvas = document.getElementById(“countdownCanvas”);
context = aCanvas.getContext(“2d”);
var canvasText = “Press to Start…”;
var xPos = aCanvas.width / 2;
var yPos = aCanvas.height / 2;
context.font = “12pt Century Gothic”;
context.fillStyle = “#008000;”;
context.textAlign = “center”;
context.textBaseline = “middle”;
context.fillText(canvasText, xPos, yPos);
}
function updateCanvas(theContext, width, height) {
if (countDownSeconds < 0) {
clearInterval(handle);
handle = null;
alert(“hey, time is up!”);
return 0;
}
minStr = Math.floor(countDownSeconds / 60);
secStr = countDownSeconds % 60;
if (minStr < 10) {
minStr = “0” + minStr;
}
if (secStr < 10) {
secStr = “0” + secStr;
}
context.clearRect(0, 0, width, height);
context.font = “24pt Century Gothic”;
context.fillText(minStr + ” : ” + secStr, width / 2, height / 2);
countDownSeconds–;
}
function startWorkCountDown() {
if (handle != null) {
clearInterval(handle);
}
countDownSeconds = document.getElementById(“workIntervalInput”).value * 60;
timeDisplayCanvas = document.getElementById(“countdownCanvas”);
timeDisplayContext2D = timeDisplayCanvas.getContext(“2d”);
updateCanvas(timeDisplayContext2D, timeDisplayCanvas.width, timeDisplayCanvas.height);
handle = setInterval(function() {
updateCanvas(timeDisplayContext2D, timeDisplayCanvas.width, timeDisplayCanvas.height);
}, 1000);
}