0

这是一个奇怪的问题。通过 jquery,我想创建一个容器对象,在视觉上隐藏它,将 AJAX 内容加载到其中,并在加载内容时显示。

奇怪的是,如果对象被赋予了边框,它似乎只会隐藏对象。例子:

这有效:

tr.find('td')
    .html("<div class='inlineLoading'>loading...</div>"
         + "<div "
         +    "class='loadedContent' "
         +    "style='background: green; border: 1px solid red;'>"
         + "</div>"
    )
;

var container = tr.find('div.loadedContent');
container.hide('slow',loadContent(container,dataURL));

加载内容函数:

function loadContent(container,dataURL) {  
    container.load(dataURL)  
}  

运行上述内容,它按预期工作。我清楚地看到带有红色边框的 DIV 被创建,然后慢慢隐藏起来。查看呈现的源代码,我可以确认 ajax 调用也在加载内容。

但是,如果我从上面省略红色边框,它永远不会隐藏自己。div 清楚地加载(带有绿色背景),不会隐藏自身,然后从 LOAD 调用中加载内容。

关于这里可能发生的事情有什么想法吗?这一切都在 Firefox 中运行。

4

1 回答 1

0

为了轻松调试,不要隐藏内容,先让它加载到 div 中,看看它是否工作正常,然后进行隐藏和显示。这样,您将知道 div 中的内容,因为它可能只是从 ajax 中提取而从不插入 div 中。

于 2009-10-23T21:40:07.507 回答