Javascript 滑动打开div的Ajax响应

Javascript 滑动打开div的Ajax响应,javascript,ajax,effects,slide,Javascript,Ajax,Effects,Slide,好的,这是我上一个问题的后续内容,它要求执行一个简单的ajax请求,一旦请求返回readyState为4,status为200,它就会将响应插入到一个div中,并很好地向下滑动。我不希望使用jQuery或Scripticious之类的工具箱来执行它 以下是原始问题: 到目前为止,我已经设法使所有的工作相当顺利。但是,我有一个问题,返回的文本显示出来,然后div展开。我需要它与div和文本一起展开 这是我的密码 function slideDown() { document.getEle

好的,这是我上一个问题的后续内容,它要求执行一个简单的ajax请求,一旦请求返回readyState为4,status为200,它就会将响应插入到一个div中,并很好地向下滑动。我不希望使用jQuery或Scripticious之类的工具箱来执行它

以下是原始问题:

到目前为止,我已经设法使所有的工作相当顺利。但是,我有一个问题,返回的文本显示出来,然后div展开。我需要它与div和文本一起展开

这是我的密码

function slideDown() { document.getElementById('slideDiv').style.visibility = 'hidden'; xmlhttp.open("GET", "parse.php?what=main", true); xmlhttp.onreadystatechange = function() { if (xmlhttp.readyState == 4 && xmlhttp.status == 200) { document.getElementById('butt').value = 'hide'; document.getElementById('slideDiv').innerHTML = xmlhttp.responseText; document.getElementById('slideDiv').style.display = 'block'; var fHeight = document.getElementById('slideDiv').offsetHeight; document.getElementById('slideDiv').style.height = '0'; document.getElementById('slideDiv').style.visibility = 'hidden'; function timeIt() { function bar() { timeSlide(fHeight); } setTimeout(bar, 10); } timeIt(); } } xmlhttp.send(null); } function timeSlide(fHeight) { var fHeight; var diff; document.getElementById('slideDiv').style.visibility = 'visible'; var cHeight = document.getElementById('slideDiv').clientHeight; if (cHeight < fHeight) { cHeight = cHeight + 3; document.getElementById('slideDiv').style.height = cHeight+'px'; function timeIt() { function bar() { timeSlide(fHeight); } setTimeout(bar, 10); } timeIt(); } else { endSlide(); } } 函数slideDown() { document.getElementById('slideDiv')。style.visibility='hidden'; open(“GET”,“parse.php?what=main”,true); xmlhttp.onreadystatechange=函数() { if(xmlhttp.readyState==4&&xmlhttp.status==200) { document.getElementById('butt')。值='hide'; document.getElementById('slideDiv')。innerHTML=xmlhttp.responseText; document.getElementById('slideDiv').style.display='block'; var fHeight=document.getElementById('slideDiv')。offsetHeight; document.getElementById('slideDiv')。style.height='0'; document.getElementById('slideDiv')。style.visibility='hidden'; 函数timeIt() { 功能条() { 时间滑动(FHheight); } 设置超时(巴,10); } timeIt(); } } xmlhttp.send(空); } 功能时间滑块(FHheight) { var FHight; var-diff; document.getElementById('slideDiv')。style.visibility='visible'; var cHeight=document.getElementById('slideDiv').clientHeight; 如果(高度小于FHight) { 切特=切特+3; document.getElementById('slideDiv')。style.height=cHeight+'px'; 函数timeIt() { 功能条() { 时间滑动(FHheight); } 设置超时(巴,10); } timeIt(); } 其他的 { endSlide(); } } 我认为这是因为使用以下命令将返回的get请求放入div中

document.getElementById('slideDiv').innerHTML = xmlhttp.responseText; document.getElementById('slideDiv')。innerHTML=xmlhttp.responseText;
有人能告诉我正确的方向吗?我对JavaScript不是特别在行,而且我可能完全弄错了方向,所以任何指针都很好!提前谢谢

很难说没有看到它的实际行动,但请尝试添加以下内容:

document.getElementById('slideDiv').style.overflow = 'hidden';

哇,真是太棒了!好东西!非常感谢slideDown()中多次调用document.getElementById('slideDiv'),我认为通过设置
var slideDiv=document.getElementById('slideDiv'),可以提高可读性(可能还有性能)在顶部,然后改为使用它。