0

我有这个简单的load要求:

$('#test').load('/sidebar/test/format/html').css("display","block");

问题是 chrome 显示请求有 1.2 秒闪烁。

我正在考虑使用$.when

var test = $('#test');
$.when(test.load('/sidebar/test/format/html')).done(function(){
    test.css("display","block");
});

但这似乎不起作用。

有任何想法吗?

4

2 回答 2

2

我相信您想要的只是使用文档中定义的回调:

var test = $('#test');
test.load('/sidebar/test/format/html', function(){
    test.css('display','block');
})
于 2013-03-25T19:41:26.137 回答
1

无论出于何种原因.load,都没有实现 Deferred,因此您不能将.done方法链接到它。不过,您不需要.load在这种情况下使用。

$.get('/sidebar/test/format/html').done(function (html) {
    $("#test").html(html).show();
});
于 2013-03-25T19:39:47.563 回答