我搜索了stackoverflow,我找到了很多答案,但一切都是错的。我现在需要先将数据传递给元素,然后调用height函数,但是在数据上有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");
}
});
答案 0 :(得分:1)
你需要使用.ajaxComplete()来确保Element已完成加载(抱歉英语不好)
试试这个:
$( document ).ajaxComplete(function( event, request, settings ) {
var modal = $('#YOUR_ID'),
contents = modal.find(".modal-contents").first();
alert(contents.height());
});