Я думаю, что сойду с ума.Невозможно получить размеры данных AJAX при последующих вызовах
Все, что я хочу сделать, это получить размеры данных, загружаемых через AJAX, независимо от того, сколько раз звонок был сделан. Он работает отлично в первый раз, но я всегда получаю значение 0 с каждым последующим вызовом - несмотря на то, что он появляется на странице, как и следовало ожидать.
// The AJAX part
function getDetails(request){
$placehold.empty();
return jQ.get(request);
};
// Filter & render AJAX data
function renderData(data){
var endResult = $(data).find('#productDetails');
endResult.fadeTo(0,0).appendTo($placehold);
$placehold.removeClass('loading');
endResult.fadeTo(300,1); // <- Added as per request
// Console log previously uncalled data works fine
// Called again, I get zero every single time
console.log(jQ('#anyElementInAJAXData').outerHeight(false));
};
// Click handler
jQ('#slides').on('click', '.slideLink', function(e){
e.preventDefault();
var target = jQ(this).attr("href");
$placehold.fadeIn(360).addClass('loading');
getDetails(target)
.done(function(result) {
renderData(result);
})
});
Что я делаю неправильно?
Каков результат 'console.log (jQ ('# anyElementInAJAXData'). Length)' в последующих вызовах? – Matt
Почему вы угасаете «endResult», но не заставляете его снова появляться? – m90
@Matt возвращает «1» каждый раз – verism