javascript - 使用 javascript 显示错误

标签 javascript html

使用 javascript 我想显示错误消息,该消息将在 2 秒后隐藏/消失。该错误完美显示并在 2 秒后隐藏,但第二次就不起作用了。如果我重新加载页面,它会再次完美工作,依此类推。

JavaScript

if(task_hour == "hour" || task_minute == "minute"){

        document.getElementById("error").innerHTML = "Add Time for the Task";
        setTimeout(function(){ document.getElementById("error").style.display="none"; }, 2000);

        return false;
    }

HTML

<div id="errordiv" align="center" style="margin-left: auto; margin-right: auto;"> 
   <span id="error" style="color: red"> </span> 
</div>

最佳答案

您应该将 div 设置为最初隐藏(display: none)并使用 display: block 显示它:

JS:

var timer = null;

function showError(message) {
    if (timer !== null) {
        // Clear previous timeout:
        clearTimeout(timer);
        timer = null;
    }
    var errorElement = document.getElementById("error");
    errorElement.innerHTML = message;
    errorElement.style.display = 'block';
    timer = setTimeout(function(){ errorElement.style.display = 'none'; }, 2000);
}

showError('Error!');

HTML:

<div id="errordiv" align="center" style="margin-left: auto; margin-right: auto;"> 
    <span id="error" style="color: red; display: none"></span> 
</div>

关于javascript - 使用 javascript 显示错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27965834/

相关文章:

javascript - 外部接口(interface)回调未定义 AS3

html - 如何将元素与显示表格对齐?如果您已经为您的 child 应用了 display table-cell?

javascript - 支付成功页面AngularJS

html - HTML 中的文本缩进

html - &lt;input&gt; 有神秘的底部填充

javascript - 线的第一个坐标 (x0,y0) 不影响 SVG 中的起始位置

javascript - 带有本地商店的 ExtJS 4 分页

javascript - angular ng-repeat 和 inline-block

javascript - jQuery .closest 返回未定义

html - 如何使用 CSS 为居中列的相邻空间着色?