0

ajax 加载包装器后,我在刷新包装器中的内容时遇到问题。

当我检查萤火虫时 - XHR 正在显示请求,我可以看到加载的元素,但它没有显示在页面上。

这就是我使用 pullDown 函数来获取 ajax 内容

function pullDownAction () {
    setTimeout(function () {   
        var el, li, i;
        el = document.getElementById('thelist');
        var http = new XMLHttpRequest();
        var url = window.location;
        http.open("GET",url,true);
        http.send();
        myScroll.destroy();
                myScroll = null;
                loaded();
  }, 1000);   
}

看起来内容卡在网页上显示和 ajax 请求之间。

任何想法?

4

1 回答 1

0

myScroll.refresh()(而不是 .destroy() 和调用“loaded()”)应该可以解决问题!如果您使用的是 IScroll4,您可以尝试使用 iscrollcheckDOMChanges:true选项。

如果它仍然不起作用 - 这可能是由于滚动包装器 (#scroller) 没有随其内容扩展而导致的 CSS 问题。( float,position:absolute;或类似的东西)

编辑:在我看来,您根本没有处理请求的 responseText !

根据此示例,您需要事件的事件处理程序onreadystatechange

 http.open("GET",url,true);
 http.onreadystatechange = function () {
       if (http.readyState == 4) {
          alert(http.responseText); //handle this response! (i.e. writing to an element's innerHTML)
      }
 };
 http.send(null);
于 2013-07-11T10:43:23.450 回答