更新:我要感谢大家的帮助。我从来没有得到代码片段集成,但那是我的错不是你的:)我得到了一些javascript的帮助,我们不仅在bitvote.github com上运行,但我们已经有了第一次采访twitter com / EtherCasts / status / 477566828513099777,积极的社区回应以及本周排名的2个采访! ^ _ ^再次感谢stackexchange!
原始问题:
我想在http://arkbg1.github.io/BitVote/
中将4个javascript计时器插入我的概念验证页面用户点击“从这里开始”按钮后,一个计时器以毫秒为单位显示“当前时间”,然后是数据输入表,然后是代码日志。我需要它有4个定时器而不是1个。
注册时间:MM / DD / YYYY hh:mm:ss(静态计数器,捕获用户点击的时间戳。类似于w3schools(。)com / js / tryit.asp?filename = tryjs_date_gettime除外MM / DD / YY hh:mm:ss格式。
当前时间:MM / DD / YYYY hh:mm:ss(现场直播。类似于w3schools(。)com / js / tryit.asp?filename = tryjs_timing_clock
花费的投票时间:00:00:00(静态计数器。暂时忽略此信息。)
可用投票时间:hh:mm:ss(实时计数器,点击后开始基本秒表)
每当我尝试将w3school代码粘贴到我的github代码中时,按钮/表格脚本就会完全失灵或消失。我昨天尝试了44次提交。 nothings工作,我不知道我在做什么打破当前的代码或如何添加这4个基本的计时器而不破坏页面。
这里是index.html和js.js - https://github.com/arkbg1/BitVote
答案 0 :(得分:0)
我的猜测是您在文档完全加载之前尝试使用document.getElementById
抓取页面元素。尝试设置运行onload
的“主”功能。您可以在JS文件中尝试这样的事情。然后,只要您使用这些原始变量,就可以从state
对象获取它们。
var state;
window.onload = function() {
state = {
date: new Date(),
spend_time: document.getElementById("spend_time"),
button: document.getElementById("button"),
spend_addr: document.getElementById("spend_addr"),
power_time: document.getElementById("power_time"),
progress: document.getElementById("progress"),
passed: document.getElementById("passed"),
to_fraction: document.getElementById("to_fraction"),
amount_note: document.getElementById("amount_note"),
spend_addr_note: document.getElementById("spend_addr_note"),
old_spend_val: 0
};
voting(from_time() == 0);
state.spend_time.value= state.old_spend_val;
update_power_time();
update_spend_addr();
};
计时器示例
<!DOCTYPE html>
<html>
<head>
<title>Timer Test</title>
<script>
window.onload = function () {
var container = document.getElementById("container");
setInterval(function () {
var now = new Date(),
h = now.getHours(),
m = now.getMinutes(),
s = now.getSeconds();
if (h < 10) h = "0" + h;
if (m < 10) m = "0" + m;
if (s < 10) s = "0" + s;
container.innerHTML = h + ":" + m + ":" + s;
}, 500);
}
</script>
</head>
<body>
<div id="container">
</div>
</body>
</html>