jquery仅隐藏对具有边框的元素的操作

jquery仅隐藏对具有边框的元素的操作,jquery,hide,Jquery,Hide,这是一个奇怪的问题。通过jquery,我想创建一个容器对象,直观地隐藏它,将AJAX内容加载到其中,然后在加载内容时显示 奇怪的是,它似乎只隐藏对象,如果说,对象是给了一个边界。例如: 这项工作: tr.find('td') .html("<div class='inlineLoading'>loading...</div>" + "<div " + "class='loadedContent' "

这是一个奇怪的问题。通过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));
运行上述命令,它将按预期工作。我清楚地看到带有红色边框的DIV被创建,然后慢慢地隐藏起来。查看呈现的源代码,我可以确认ajax调用也正在加载内容

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


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

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

好吧,我仍然不确定上面的操作为什么会这样做,但我想出的解决方法是甚至不用隐藏div。相反,我只是在创建时将其设置为“display:none”,然后稍后再显示。加载工作正常。这就是一开始令人困惑的地方。在我告诉它之前,我会看到我想加载的内容。显示。CSS边框似乎不会改变行为,但确实如此。它是否修复了?如果没有,那么尝试直接从jquery添加css边框。
function loadContent(container,dataURL) {  
    container.load(dataURL)  
}