消息DIV问题

时间:2016-02-22 23:30:26

标签: javascript jquery html css

我有以下javascript它会在屏幕上弹出一条消息,但是如果它还没有被移除,那么它总是在上一个messageDiv的顶部。

我正在试图找出如何让messageDiv按下前一个div直到它消失然后取消之前的MessageDiv的位置,或者显示在页面上当前的一个下方当新的出现时,向下移动到前一个下方。

If readOnlyFlag = True AND sheetExists = True Then 
    AddSheetAtEnd = False
    Exit Function
Elseif readOnlyFlag = False Then
    If sheetExists = True Then DeleteSheet(ShtName)
    With ThisWorkbook
        .Sheets.Add(After:=.Sheets(.Sheets.Count)).Name = ShtName
        AddSheetAtEnd = True
    End With    
End If

1 个答案:

答案 0 :(得分:2)

我认为您遇到了问题,因为您有多个具有相同ID的元素,并且当您的setTimeout回调执行时,它会删除最新的消息而不是最旧的消息。 HTML中只允许一个具有给定ID的元素。你需要找出一种不同的方法来找到应该为特定超时删除的div,例如(我摆脱了无关的AJAX代码):

function pushDev(){
    var messageDiv = $("<div class='pageMessage'>Data</div>")
    $("body").prepend(messageDiv);
    setTimeout(function(){messageDiv.remove()}, 6000);
}

function savePage(){
    var messageDiv = $("<div class='pageMessage'>Saved</div>")
    $("body").prepend(messageDiv);
    setTimeout(function(){messageDiv.remove()}, 6000);
}

JSFiddle here