Dam*_*mon 2 javascript jquery image document-ready
我有一个功能,我想用来调整图像大小:
当我在document.ready上运行它时,它没有任何效果; 返回的图像大小是'0'(您可能会注意到它在小提琴中起作用...我不确定是什么导致这种不一致的说实话,但在我的测试网站上它肯定会返回'0'的高度和宽度".
这是预期的行为吗?如果是这样,当图像有宽度时,我怎么能做一个简单的监听器?
这是一种超安全的方法,不需要等待所有图像加载,并处理在DOM准备好之前可以缓存或完成加载图像的情况.
$('#my_img').one('load',function(){
resizeImgByArea('logo', 50);
})
.filter(function(){
return this.complete;
})
.load();
Run Code Online (Sandbox Code Playgroud)
.one('load',...)一旦调用它就会删除处理程序.你只需要一次.
.filter()如果图像已经加载,将返回图像.如果不是,则不返回任何元素.
.load()将手动调用处理程序.仅在图像已加载时才会出现这种情况.
因此,如果在DOM准备好之前预先加载了图像,我们将.load()手动调用其处理程序.如果没有,它的处理程序将在加载时被调用.