jQuery .load()回调

时间:2017-03-09 23:20:20

标签: javascript jquery ajax

我尝试使用AJAX调用加载某些内容,并在加载内容后执行其他操作。在我的例子中,后一个动作只是一个警报,但在我的现实世界的例子中,我试图专注于输入字段。

$("#box").load("/favicon.png", function(response) {
     alert('do after the load');
});

https://jsfiddle.net/u0cmmn5h/

正如您在小提琴中看到的那样,警报会在实际加载图标之前触发。在内容加载后,该功能是否应该启动?

2 个答案:

答案 0 :(得分:2)

.load()上的回调在http响应时执行,而不是在客户端呈现图像时。

答案 1 :(得分:0)

以下是在图片上使用load的示例。不确定你在div上有load

当图像load属性发生变化并且图像成功加载时,将触发src方法(请注意,如果失败则不会执行)。

.load() jQuery

  

当加载事件和所有子元素已完全加载时,会将事件发送到元素。此事件可以发送到与URL关联的任何元素:图像,脚本,框架,iframe和窗口对象。

$(function() {
	$('img').load(function() {
  	alert('done after load');
  }).attr('src', '/favicon.ico');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div id="box">
  <img />
</div>