0

愚蠢的问题。我试图让一条消息在几秒钟后出现并消失。我只是想我会有一个超时功能,最后我会附加一个空字符串。

setTimeout(function() {
    $('#resultDivSE').append('<b><p style="font:color:rgb(128,0,128)">' + data + '</p></b>');
}, 1000)
$('#resultDivSE').append('');

这似乎不起作用。我在这里遗漏了什么...另外,您将如何设置文本的颜色?

4

5 回答 5

3

Append 是在末尾添加一个空白字符串,你想要替换它,你想要.html('')

对于你想要的颜色$('#resultDivSE').css('color' , '#FF0000')(我想,我不怎么使用 jQuery)

于 2012-07-30T13:32:29.510 回答
1

你的逻辑是倒退的。您需要立即设置消息,然后在超时时清除它。要让消息显示一秒钟,您可以这样做:

$('#resultDivSE').html('<b><p style="color: #ff00ff">' + data + '</p></b>');
setTimeout(function() {
    $('#resultDivSE').html("");
}, 1000);

PS 我还填写了正确的样式值来设置文本的颜色。

PPS 显示消息的时间不是很长。您可能想要 5 秒之类的时间。

于 2012-07-30T13:37:57.463 回答
1

append 命令将文本添加到您选择的 div 中。要清除 div 中的所有文本,您需要:

$('#resultDivSE').html('');

要更改 css 中文本的颜色,您只需使用 color: 这样您的段落标签将如下所示:

<p style="color:rgb(128,0,128)">
于 2012-07-30T13:35:07.297 回答
0

jquery css可以帮你设置字体颜色: http: //api.jquery.com/css/ 使用css属性Color

看起来您在setTimeout字符串的末尾缺少一个分号。也许我只是在这里一无所知,或者对代码片段感到困惑,但似乎您正在做相反的事情,并且您想要附加到结果 div 的 html 将在 1000 毫秒后出现。

于 2012-07-30T13:38:28.937 回答
0

使用.html而不是.append. Append 将向您的 div 添加一些内容,而.html实际上会更改 HTML。

于 2012-07-30T13:33:43.100 回答