如何使用CSS样式输出的JavaScript
How To Use CSS To Style The Output Of JavaScript
javascript是一个计时器,倒计时我如何使用css改变风格?
(或任何其他替代)
我需要脚本关闭窗口时,计时器达到0,但它没有发生。出了什么问题?
是否有办法将倒计时作为进度条集成?
<span id="countdown"></span>
<script type="text/javascript">
// set the date we're counting down to
var target_date = new Date().getTime();
var delay = 10;
// variables for time units
var days, hours, minutes, seconds;
// get tag element
var countdown = document.getElementById("countdown");
// update the tag with id "countdown" every 1 second
setInterval(function () {
// find the amount of "seconds" between now and target
var current_date = new Date().getTime();
var seconds_left = (current_date - target_date) / 1000;
var a = (delay - seconds_left);
// do some time calculations
minutes = parseInt(a / 60);
seconds = parseInt(a % 60);
// format countdown string + set tag value
countdown.innerHTML = minutes + "m: " + seconds + "s";
if (seconds_left > delay) {
setTimeout(action(), 10);
}
}, 1000);
var action = function () {
close();
}
</script>
html:
<div id="countdown" style="background:gray"></div>
js代码:
// set the date we're counting down to
var target_date = new Date().getTime();
var delay=10;
// variables for time units
var days, hours, minutes, seconds;
// get tag element
var countdown = document.getElementById("countdown");
// update the tag with id "countdown" every 1 second
setInterval(function () {
// find the amount of "seconds" between now and target
var current_date = new Date().getTime();
var seconds_left = (current_date - target_date) / 1000;
var a=(delay-seconds_left);
// do some time calculations
minutes = parseInt(a / 60);
seconds = parseInt(a % 60);
var progress = a/delay*100;
// format countdown string + set tag value
countdown.innerHTML = '<div style="background:red; width:'+progress+'%">'+minutes + "m: " + seconds + "s" + '</div>';
if(seconds_left>delay)
{setTimeout(action(),10);}
if(a < 0)
{
countdown.innerHTML = 'END';
window.close();
}
}, 1000);
var action=function()
{
close();
}
演示——> http://jsfiddle.net/Junkie/DEc4F/3/
试着把它放在你的javascript中,setInterval会每秒钟调用一次递减计数器。在decrementCounter中,我们检查值是否为仍然是正的,否则我们关闭当前窗口。
var counter = 10; //time in seconds
var decrementCounter = function() {
if (counter > 0)
counter--;
else
window.close();
}
setInterval(decrementCounter, 1000);
如果你想绑定到一个进度条,你可以使用
<progress id="myProgessBar" value="0" max="10"></progress>
您可以在decrementFunction作用域之外声明progressBar变量,这样您就不必在每次调用时都在DOM中搜索它。然后在javascript中更新进度条的value属性每次调用decrementCounter。它提供了以下功能:
var decrementCounter = function() {
if (counter > 0) {
counter--;
var progresBar = document.getElementBYId('myProgressBar');
progressBar.value += 1;
}
else
window.close();
}
不完全确定语法,但这就是精神。你可以在这里找到关于进度元素的更多信息
http://www.alsacreations.com/article/lire/1416-html5-meter-progress.html相关文章:
- console.log以外的Javascript输出函数
- 比较两个值时出现JavaScript输出和控制流错误
- 监视JavaScript输出,例如console.log()
- 意外的javascript输出
- 获取表格格式的 Javascript 输出
- 在 JavaScript 输出中设置字体样式
- javascript输出true中的hasOwnProperty方法
- 让我的javascript输出显示在HTML中
- 向Javascript输出中添加逗号分隔的数字
- 如何在Java程序中读取JavaScript输出文本
- 使用javascript输出样式通知
- Sublime Text 3-can't将javascript输出到浏览器
- c#linq对象到javascript输出
- 如何添加单选按钮和复选框将选择输入到一起以形成JavaScript输出
- JavaScript输出中的CoffeeScript注释
- 以javascript输出对象值
- 你如何格式化json,然后通过Javascript输出它
- 如何将javascript输出到页面
- JavaScript输出消失
- Javascript输出表现得很奇怪