Javascript 某段时间内显示多个通知
Javascript shows several notification in a certain time
这是我的 JSP 代码
这里我用alertify.js来通知,用javascript来抢时间。
在某个时间它显示8个通知。
(function () {
function checkTime(i) {
return (i < 10) ? "0" + i : i;
}
function startTime() {
var today = new Date(),
h = checkTime(today.getHours()),
m = checkTime(today.getMinutes()),
s = checkTime(today.getSeconds());
// ms = checkTime(today.getMilliseconds());
document.getElementById('time').innerHTML = h + ":" + m + ":" + s;
t = setTimeout(function () {
startTime()
}, 100);
if(h==16 && m==52 && s==00 )
{
alertify.notify('sample', 'success', 60, function(){ console.log('dismissed'); });
}
else if(h==17 && m==01 && s==00 )
{
alertify.notify('difficult', 'success', 60, function(){ console.log('dismissed'); });
}
}
startTime();
})();
<script src="js/alertify.min.js"></script>
<!-- include the style -->
<link rel="stylesheet" href="css/alertify.min.css" />
<!-- include a theme -->
<link rel="stylesheet" href="css/default.min.css" />
<!-- CSS -->
<!-- CSS -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/alertify.min.css"/>
<!-- Default theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/default.min.css"/>
<!-- Semantic UI theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/semantic.min.css"/>
<!-- Bootstrap theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/bootstrap.min.css"/>
<!--
RTL version
-->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/alertify.rtl.min.css"/>
<!-- Default theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/default.rtl.min.css"/>
<!-- Semantic UI theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/semantic.rtl.min.css"/>
<!-- Bootstrap theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/bootstrap.rtl.min.css"/>
<div id="time"></div>
我想在特定时间看到一条通知。但怎么可能呢?
您每秒检查时间 10 次(每 100 毫秒),这可能是您收到很多警报的原因。将 100 替换为 1000,它应该可以工作:
function startTime() {
var today = new Date(),
h = checkTime(today.getHours()),
m = checkTime(today.getMinutes()),
s = checkTime(today.getSeconds());
// ms = checkTime(today.getMilliseconds());
document.getElementById('time').innerHTML = h + ":" + m + ":" + s;
t = setTimeout(function () {
startTime()
}, 1000);
// ^^^^
if(h==16 && m==52 && s==00 )
{
alertify.notify('sample', 'success', 60, function(){ console.log('dismissed'); });
}
else if(h==17 && m==01 && s==00 )
{
alertify.notify('difficult', 'success', 60, function(){ console.log('dismissed'); });
}
}
这是我的 JSP 代码
这里我用alertify.js来通知,用javascript来抢时间。 在某个时间它显示8个通知。
(function () {
function checkTime(i) {
return (i < 10) ? "0" + i : i;
}
function startTime() {
var today = new Date(),
h = checkTime(today.getHours()),
m = checkTime(today.getMinutes()),
s = checkTime(today.getSeconds());
// ms = checkTime(today.getMilliseconds());
document.getElementById('time').innerHTML = h + ":" + m + ":" + s;
t = setTimeout(function () {
startTime()
}, 100);
if(h==16 && m==52 && s==00 )
{
alertify.notify('sample', 'success', 60, function(){ console.log('dismissed'); });
}
else if(h==17 && m==01 && s==00 )
{
alertify.notify('difficult', 'success', 60, function(){ console.log('dismissed'); });
}
}
startTime();
})();
<script src="js/alertify.min.js"></script>
<!-- include the style -->
<link rel="stylesheet" href="css/alertify.min.css" />
<!-- include a theme -->
<link rel="stylesheet" href="css/default.min.css" />
<!-- CSS -->
<!-- CSS -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/alertify.min.css"/>
<!-- Default theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/default.min.css"/>
<!-- Semantic UI theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/semantic.min.css"/>
<!-- Bootstrap theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/bootstrap.min.css"/>
<!--
RTL version
-->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/alertify.rtl.min.css"/>
<!-- Default theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/default.rtl.min.css"/>
<!-- Semantic UI theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/semantic.rtl.min.css"/>
<!-- Bootstrap theme -->
<link rel="stylesheet" href="//cdn.jsdelivr.net/alertifyjs/1.4.1/css/themes/bootstrap.rtl.min.css"/>
<div id="time"></div>
我想在特定时间看到一条通知。但怎么可能呢?
您每秒检查时间 10 次(每 100 毫秒),这可能是您收到很多警报的原因。将 100 替换为 1000,它应该可以工作:
function startTime() {
var today = new Date(),
h = checkTime(today.getHours()),
m = checkTime(today.getMinutes()),
s = checkTime(today.getSeconds());
// ms = checkTime(today.getMilliseconds());
document.getElementById('time').innerHTML = h + ":" + m + ":" + s;
t = setTimeout(function () {
startTime()
}, 1000);
// ^^^^
if(h==16 && m==52 && s==00 )
{
alertify.notify('sample', 'success', 60, function(){ console.log('dismissed'); });
}
else if(h==17 && m==01 && s==00 )
{
alertify.notify('difficult', 'success', 60, function(){ console.log('dismissed'); });
}
}