我正在用HTML5制作横幅,我需要它在20秒后关闭。
应该是dhtml.external.close();和20秒后的settimeout。谁能帮我这个?
也许有可能以这种方式做某事吗?
var close = document.createElement('a');
close.style.display = 'block';
close.href = "#";
close.innerHTML = 'CLOSE';
close.onclick = function() {
dhtml.external.close();
}
document.body.appendChild(close);
});
但只是以某种方式设定时间?
答案 0 :(得分:2)
假设您的banner元素具有ID "banner"
,可以执行以下操作:
<div id=banner>BANNER !</div>
<script>
document.onload=function(){
setTimeout(function(){
var banner = document.getElementById('banner');
banner.parentNode.removeChild(banner);
}, 20000);
};
</script>
请注意,许多库可帮助您在删除时制作最漂亮的动画。例如,jQuery允许你慢慢淡出它:
setTimeout(function(){
$('#banner').fadeOut(2000);
}, 20000);
编辑:
从你的评论开始,我可以建议你:
var close = document.createElement('a');
close.style.display = 'block';
close.href = "#";
close.innerHTML = 'CLOSE';
close.onclick = function() {
dhtml.external.close(); // is that a call to a library ? Is that IE specific ?
}
document.body.appendChild(close);
setTimeout(function(){
document.body.removeChild(close);
}, 20000);