超时没有发生 - 简单的Javascript

时间:2016-03-18 17:18:40

标签: javascript html

我尝试制作一段代码,当没有任何内容输入文本字段时会显示一条消息,然后消失(我可能会让它淡出而不是简单地消失但是在我们可以运行之前让它走...)。

到目前为止我所做的事情看起来如此:

<div id="msg"></div>

<script>
var x = document.getElementById("msg");
    x.innerHTML = "Enter a video URL";
    setTimeout(function() {
        x.innerHTML = "");
    }, 1000);
</script>

似乎超时功能不像我替换时那样工作:

setTimeout(function() {
    x.innerHTML = "");
}, 1000);

setTimeout(function() {
    x.innerHTML = "A");
}, 1000);

A立即显示,表示&#34;输入视频&#34;字符串没有被执行,浏览器直接跳转到我想要暂停的字符串。

3 个答案:

答案 0 :(得分:1)

你的超时中有一个未匹配的括号:

<div id="msg">start</div>

JS:

var x =  document.getElementById("msg");
x.innerHTML = "Enter a video URL";
setTimeout(function() {
          x.innerHTML = "end";
}, 1000);

答案 1 :(得分:0)

使用它应该这样做。你有几个错误..

setTimeout(function() {
    x.innerHTML = "A";
}, 1000);

编辑:没有注意到它不是jQuery,所以改变了我的回复......

答案 2 :(得分:0)

签名为setTimeout(func,delay)

所以你只需要在函数中解决你的拼写错误:

setTimeout(function() {
    x.innerHTML = "SOME_VALUE";
}, 1000);