我有一个带有事件侦听器的函数,然后会提示另一个函数。在事件侦听器之前,该函数工作得非常好。假设发生的是假设文本被加载到各自的 div 中,然后当它们完成时,假设会发生一个动画功能。由于某种原因,动画功能会导致文本加载被跳过。
这是设置的 JS BIN http://jsbin.com/umohoj/11/edit
它在 .load 的 url 上(即使它们不能与 eventlistner 一起使用)
http://www.klossal.com/b_test.html
这是一个没有动画的负载的工作示例:
http://www.klossal.com/b_testa.html
这是一个将负载作为一个功能的动画的工作示例,而不是等待负载完成的动画,这是我想要发生的,因为负载需要完成动画中的某些计算正常工作。
http://www.klossal.com/b_testb.html
这是带有事件侦听器的代码,由于某种原因阻止了负载工作:
$(".name").click(function() {
var id = $(this).attr('id');
$('#photo_850').empty();
$("<img>", { src: id + ".jpg" }).prependTo("#photo_850");
$("#name_850").load(id +"_name.txt");
$("#credentials_850").load(id +"_credentials.txt");
$("#bio_850_text").load(id +"_bio.txt", function() {
$("#bio_850_img").css({
marginTop: ($("#bio_850_text").innerHeight() /2) -
($("#bio_850_img").height() / 2)
});
});
$("#edu_850_text").load(id +"_edu.txt", function() {
$("#edu_850_img").css({
marginTop: ($("#edu_850_text").innerHeight() /2) -
($("#edu_850_img").height() / 2)
});
});
$("#contact_850_text").load(id +"_contact.txt", function() {
$("#contact_850_img").css({
marginTop: ($("#contact_850_text").innerHeight() /2) -
($("#contact_850_img").height() / 2)
});
});
}, function() {
$("#container_1").animate({
height: 87 + $("#box_2_850").height() + $("#box_3_850").height() +
$("#box_4_850").height()
}, 300);
$("#container_1_txt").animate({
"margin-top": $("#container_1_txt").innerHeight() * -1
}, 300);
$("#box_1_850").delay(160).animate({
marginTop: 15
}, 300);
$("#box_2_850").delay(330).animate({
marginTop: 0
}, 450);
$("#box_3_850").delay(450).animate({
marginTop: 0
}, 450);
$("#box_4_850").delay(570).animate({
marginTop: 0
}, 450);
});