jquery .html()仅适用于alert()

时间:2015-11-25 20:25:01

标签: javascript jquery html alert

我有一个javascript函数,使用jQuery,它操纵<div id="message">来打印错误和状态消息。

看起来像这样:

function messageShow(msg, type) {
    $('#message').addClass("message red");
    $('#message').html(msg);
    $("#message").slideDown(200, 0).fadeTo(200, 1);
    setTimeout(function() {
        $("#message").fadeTo(500, 0).slideUp(500, 0);
    }, 5000);
    //alert('asdasd');
}

只有在我取消注释alert();行时才能看到div的内容。 此后没有重定向,因此在加载内容之前不会更改页面。

我试过了:

$('#message').html(msg, function() { ... });

只是为了确定,但这也不起作用。

div:

<div id="message"></div>

css:

.message {
    border-radius: 5px;
    width: 100%;
    height: 20px;
    padding: 10px;
    vertical-align: middle;
    line-height: 20px;
}

.red {
    background: #daa;
    color: #855;
}

1 个答案:

答案 0 :(得分:0)

我建议你改用jquery 延迟功能。

试试这个:

function messageShow(msg, type) {
 $('#message').addClass("message red");
 $('#message').html(msg); 
 $("#message").slideDown(200, 0).fadeTo(200, 1).delay( 500 ).fadeTo(500, 0).slideUp(500, 0);
}