4

我在主页上有一个带有 id 通知的 div。我不希望在页面第一次加载时加载 div,我希望它在 1 分钟后加载。javascript或jquery有什么方法可以做我想做的事吗?

4

4 回答 4

3

我不确定您希望如何将 div 实际添加到 DOM 中,但您可以使用 setTimeout 延迟一分钟。从文档

Calls a function or executes a code snippet after specified delay.

所以是这样的:

function appendDiv() {
  ... append code here...
}

timeoutID = window.setTimeout(appendDiv, 60000);
于 2013-03-27T19:28:04.570 回答
2

当然 :) 在我的示例中,我使用 jQuery:

<div style="display:none" id="notifications"></div>

<script type="text/javascript">
$(document).ready(function() { 
    setTimeout(function() { 
        $.get('/notifications.php', function(result) {
            // build your notifications here
            // ...
            $('#notifications').show(); 
        }, 'json');
    }, 60000);
});
</script>
于 2013-03-27T19:28:44.057 回答
0

如果通知在第一分钟根本不应该在 DOM 中,请使用以下代码:

$(document).ready(function(){
  setTimeout( function(){
    $("<div>")
      .html( "your notification message/markup" )
      .attr({ id : 'notification', ... })
      .appendTo( "body" /* or any other DOM element */ );
  }, 60*1000);
})
于 2013-03-27T19:36:07.643 回答
0

使用 jQuery 的load功能:

setTimeout(function() {
    $('#myDiv').load('divcontents.html');
}, 60 * 1000);

divcontents.html可以在服务器上动态生成。

于 2013-03-27T19:40:30.370 回答