好的,这是继我之前的问题之后,reguarding 执行一个简单的 ajax 请求,一旦请求返回 4 的 readyState 和 200 的状态,它会将响应插入 div 并很好地向下滑动。我不希望使用 jQuery 或 scriptalicious 之类的工具包来执行它。
这是原来的问题:
无需使用工具包即可使用幻灯片效果的 Ajax
到目前为止,我已经设法让这一切都很好地工作。但是我有一个问题,即显示返回的文本,然后 div 展开。我需要它与 div 和 text 一起扩展。
这是我的代码
函数滑下() { document.getElementById('slideDiv').style.visibility = 'hidden'; xmlhttp.open("GET", "parse.php?what=main", true); xmlhttp.onreadystatechange = 函数() { 如果(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'; 函数时间它() { 函数栏() { timeSlide(fHeight); } 设置超时(酒吧,10); } 时间它(); } } xmlhttp.send(null); } 函数 timeSlide(fHeight) { var fHeight; 变量差异; document.getElementById('slideDiv').style.visibility = 'visible'; var cHeight = document.getElementById('slideDiv').clientHeight; 如果(cHeight < fHeight) { cHeight = cHeight + 3; document.getElementById('slideDiv').style.height = cHeight+'px'; 函数时间它() { 函数栏() { timeSlide(fHeight); } 设置超时(酒吧,10); } 时间它(); } 别的 { 结束幻灯片(); } }
我认为这是由于使用以下内容将返回的 get 请求放入 div 所致。
document.getElementById('slideDiv').innerHTML = xmlhttp.responseText;
Can someone please put me in the correct direction with this? I'm not particularty good with JavaScript and I'm probably going the complete wrong way about it so any pointers would be great! Thanks in advance!