延迟js函数的执行

delay the execution of a js function

本文关键字:执行 函数 js 延迟      更新时间:2023-09-26

我编写了一个函数在框的中心显示图像。然而,当图像被加载时,它带有一些默认的样式,包括位置信息。调用中心图像函数本质上与图像加载同时发生,但它在图像完全加载之前完成。这将导致center image函数的副作用被图像的默认样式覆盖,从而导致图像没有被放置在框的中心。

我想知道我是否可以延迟执行中心图像函数来解决这个问题。有人告诉我如何延迟js函数的执行吗?非常感谢。

您可以使用setTimeout延迟函数的执行,但我不认为这是您想要的,因为您可以侦听何时加载图像。

if(image.complete) {
    // already finished loading
}else{
    image.onload=function() {
        // loaded
    };
}

imgonload事件上调用"center image"函数

<img src="<>" onload="centerImage()" />

如果您正在使用jQuery javascript库,您可以使用以下代码片段来运行所有图像加载后的代码:

$(window).load(function(){  
  //initialize after images are loaded  
});

代替"window"(页面上所有图片都已加载),也可以直接选择图片