当动态更改div中的内容时,是否有方法延迟新内容的显示,直到所有布局完成?
我使用javascript和ajax来更新div的内容,当我插入ajax脚本返回的html时,它似乎在元素可见之后进行新内容的布局,溢出到目标div之外
虽然这种情况发生得很快,而且最终的结果正是我所希望的,但它确实会产生一种令人不快的“闪烁”,我希望避免这种情况
javascript
$requestURL = 'Scripts/getCategoryItems.php?Category='+$category+'&PageLength='+$pageLength+'&Page='+$page ;
AjaxRequest.open('GET',$requestURL,true);
AjaxRequest.onreadystatechange = function()
{ if(AjaxRequest.readyState == 4)
{
if (AjaxRequest.responseText !== 'false')
{ TargetContainer.style.display = "none";
TargetContainer.innerHTML=AjaxRequest.responseText;
TargetContainer.style.display = "block";
} else { alert(AjaxRequest.responseText); } ;
document.body.className = '';
}
};
document.body.className = 'waiting';
AjaxRequest.send();
Html格式:
<div id="Content" style="float:left; width:820px; height:550px; max-height:550px; color:#E0E0E0; padding-top:30px; overflow:hidden;"></div>
最佳答案
您可以在文档中运行代码,以便在开始进行ajax调用之前完全加载文档。
编辑:或者如果您不使用jQuery,则使用window.onload事件。