Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 确保在动态更改jquery时加载图像_Javascript_Jquery - Fatal编程技术网

Javascript 确保在动态更改jquery时加载图像

Javascript 确保在动态更改jquery时加载图像,javascript,jquery,Javascript,Jquery,我正在更改图像节点的图像src。 我希望能够确保在执行某些代码之前对其进行更改。我该怎么做 现在我有 function changePic(imgNode, newPic, desc){ var descNode = $("#description"); $(imgnode).fadeTo(500, 0, function(){ $(imgnode).attr("src", newPic); $(imgnode).attr("alt", desc)

我正在更改图像节点的图像src。 我希望能够确保在执行某些代码之前对其进行更改。我该怎么做

现在我有

function changePic(imgNode, newPic, desc){
    var descNode = $("#description");
    $(imgnode).fadeTo(500, 0, function(){
        $(imgnode).attr("src", newPic);
        $(imgnode).attr("alt", desc)
        descNode.text(desc);
        $(imgnode).fadeTo(500, 1);
    });
}
如果服务器是fast/a本地服务器,则效果非常好。如果服务器运行缓慢,图像将在更改前淡入,效果会非常糟糕

有什么想法吗

编辑:调用changePic时,我正在加载图像。有更好的方法吗

更多:还有为什么最后一行不是个好主意

美元(imgnode),法德托(500,1),

,在回调函数之外?

使用回调参数 从单据中提取:

$('#clickme').click(function() {
 $('#book').fadeOut('slow', function() {
    // Animation complete.
  });
});
,但要确保它已完全加载,请使用

引述:

加载事件被发送到元素 当它和所有子元素 满载的。此事件可以是 发送到与 URL:图像、脚本、帧、iFrame、, 和窗口对象

不要错过这句话:

加载事件可能会发生 如果图像为空,则不会触发 从浏览器缓存加载。到 考虑到这种可能性,我们可以 使用激发的特殊加载事件 如果图像已准备好,请立即。 当前正在加载event.special.load

我举了一个例子,说明我认为你希望它如何工作。我在通过谷歌图片找到的三张图片之间切换。我在更改映像的src之前绑定load事件,以确保它被触发。

我想,您可以在隐藏元素中预加载图像,以便加载其他html。当来源改变时,应立即显示此类图像

猜猜在调用changePic之前您没有预加载图像?