Здравствуйте! Как получить высоту для элемента после того, как ajax передаст данные в элемент: $("#contents"). Html(data) $("#contents"). Height()?
У меня есть поиск по stackru, и я нашел много ответов на это, но все не так. Теперь мне нужно передать сначала данные в элемент, а затем вызвать функцию высоты, но все еще не работает после того, как данные имеют HTML на элементе.
$.ajax({
url: el.attr("data-action"),
dataType: "html",
type: "GET",
contentType: "html",
success: function(data) {
var id = el.attr('data-modal');
$("body").append("<div id='" + id + "' class='modal'><div class='modal-contents'>" + data + "</div></div>");
var modal = $("#" + id);
contents = modal.find(".modal-contents").first();
alert(contents.height());
modal.addClass("visible");
contents.slideDown("slow");
}
});
1 ответ
Решение
Вам нужно использовать.ajaxComplete(), чтобы убедиться, что элемент полностью загружен (извините за плохой английский)
попробуй это:
$( document ).ajaxComplete(function( event, request, settings ) {
var modal = $('#YOUR_ID'),
contents = modal.find(".modal-contents").first();
alert(contents.height());
});