Javascript 如何设置setInterval函数来更新消息框?
我目前正在处理一个网页,我需要实现的是,当我点击一个图标时,一个消息框提示出来,消息框上有一个倒计时,当我返回倒计时时,它只在我触发它时返回值,但我想在消息框中做一个实时倒计时,我怎么做 下面是JavaScriptJavascript 如何设置setInterval函数来更新消息框?,javascript,jquery,html,Javascript,Jquery,Html,我目前正在处理一个网页,我需要实现的是,当我点击一个图标时,一个消息框提示出来,消息框上有一个倒计时,当我返回倒计时时,它只在我触发它时返回值,但我想在消息框中做一个实时倒计时,我怎么做 下面是JavaScript function phyTimer3() { var minutes1 = Math.floor(timeleft2 / 60); var seconds1 = Math.floor(timeleft2 % 60); if (timeleft2 > 0) {
function phyTimer3() {
var minutes1 = Math.floor(timeleft2 / 60);
var seconds1 = Math.floor(timeleft2 % 60);
if (timeleft2 > 0) {
timeleft2 -= 1;
} else {
autoRefresh = 1;
localStorage.setItem("translateX", translate.translateX);
localStorage.setItem("translateY", translate.translateY);
localStorage.setItem("scale", scale);
localStorage.setItem("autoRefresh", autoRefresh);
localStorage.setItem("zoomLevel", zoomLevel);
window.location.reload();
}
if (seconds1 < 10) {
seconds1 = "0" + seconds1;
}
return ("Global Timer " + minutes1 + " : " + seconds1);
}
if (bs.monitoring_status == 1) {
if (bs.cooldown_duration == '') {
var timer1 = document.getElementById('timer2').value;
monitoringmsg = "Zone:" + bs.zone + " Site:" + bs.site + " Current Monitoring Status is On" +
"</br>" + "Do you want to turn it <strong>off</strong>?" + "</br>" + "Cooldown Timer : " + phyTimer3();
} else {
monitoringmsg = "Zone:" + bs.zone + " Site:" + bs.site + " Current Monitoring Status is On" +
"</br>" + "Do you want to turn it <strong>off</strong>?"
}
$("#manualSwitch").append($("<p/>").attr("id", "monitoringon").attr("title", "Monitoring Status").html(monitoringmsg));
$("#monitoringon").dialog({
resizable: false,
height: "auto",
width: 400,
modal: true,
buttons: {
'Yes': function() {
$("#monitoring_zone_id").val(bs.zone);
$("#monitoring_site_id").val(bs.site);
$("#actionMonitoring").val('off');
document.forms["brSwitch"].submit();
$(this).dialog('close');
},
'Cancel': function() {
$(this).dialog('close');
}
}
});
}
函数phyTimer3(){
var minutes1=数学楼层(timeleft2/60);
var seconds1=数学下限(时间下限2%60);
如果(timeleft2>0){
timeleft2-=1;
}否则{
自动刷新=1;
setItem(“translateX”,translate.translateX);
setItem(“translateY”,translate.translateY);
setItem(“缩放”,缩放);
setItem(“autoRefresh”,autoRefresh);
setItem(“zoomLevel”,zoomLevel);
window.location.reload();
}
如果(秒1<10){
seconds1=“0”+seconds1;
}
返回(“全局计时器”+分钟1+:“+秒1);
}
如果(bs.U状态==1){
如果(bs.冷却时间=“”){
var timer1=document.getElementById('timer2')。值;
monitoringmsg=“区域:”+bs.Zone+“站点:”+bs.Site+“当前监视状态为打开”+
“”+“是否要将其关闭”?“+”“+”冷却计时器:“+phyTimer3();
}否则{
monitoringmsg=“区域:”+bs.Zone+“站点:”+bs.Site+“当前监视状态为打开”+
“”+“是否要将其关闭?”
}
$(“#手动开关”).append($(“”).attr(“id”,“monitoringon”).attr(“title”,“monitoringstatus”).html(monitoringmsg));
$(“#监视”)。对话框({
可调整大小:false,
高度:“自动”,
宽度:400,
莫代尔:是的,
按钮:{
“是”:函数(){
$(“#监控(区域)id”).val(bs.zone);
$(“监测现场id”).val(bs.site);
$(“#动作监控”).val('off');
document.forms[“brSwitch”].submit();
$(this.dialog('close');
},
“取消”:函数(){
$(this.dialog('close');
}
}
});
}
函数
phyTimer3
是我返回分和秒的地方,但显然这不起作用,我是编程新手,我不知道什么样的函数起作用,你们能帮我一下吗???正如你们文章的标题所说,你们试过setInterval()函数吗?它以指定的时间间隔调用函数。也许这可以帮助你:是的,我试过了,但不起作用,我在display函数中调用了setInterval(),但所有的东西都无法显示,我尝试了所有可能的方法,但都不起作用,所以我只在这里问了一下。.对于post u post,它会起作用,因为它会继续调用setInterval()函数,它会更新document.getElementById,但在我的例子中,文本显示在一个函数中,我使用jQuery.append()方法来追加文本,我可以实现的只是当用户单击它时返回。但是我想做一个实时倒计时。您的setInterval()函数是否可以用于更新DOM.innerHTML?如果是,您可以通过以下方法解决问题:追加计时器,检查id为#monitoringon的元素是否存在,更新计时器本身(这要求您添加额外的具有特定id的html元素,例如)。是的,我的setInterval()函数正在更新DOM.innerHTML,我也在其他地方使用它,你的意思是,我可以直接附加它,而不是替换整个监视??你能给我举个例子吗?