Javascript 如何在加载图像时立即运行一些代码?
我想在加载页面时获得图像的宽度。由于图像的宽度用于判断某些条件,因此逻辑如下:Javascript 如何在加载图像时立即运行一些代码?,javascript,image,Javascript,Image,我想在加载页面时获得图像的宽度。由于图像的宽度用于判断某些条件,因此逻辑如下: var width = $('img').width(); var height = $('img').height(); if(width > height){ //do fn1 }else{ //do fn2 } $('img').load(function() { var width = $('img').width(); var height
var width = $('img').width();
var height = $('img').height();
if(width > height){
//do fn1
}else{
//do fn2
}
$('img').load(function() {
var width = $('img').width();
var height = $('img').height();
if(width > height){
console.log(1);
}else{
console.log(2);
}
});
来模拟我的问题。我知道如果使用函数setTimeout
delay
“获取图像宽度”可用,但不精确
object.onload=function(){
var width = $('img').width();
height = $('img').height();
};
您可以尝试此加载功能。加载图像后,您应该检查图像的宽度和高度。 使用JQuery,您可以按如下方式检查页面加载:
var width = $('img').width();
var height = $('img').height();
if(width > height){
//do fn1
}else{
//do fn2
}
$('img').load(function() {
var width = $('img').width();
var height = $('img').height();
if(width > height){
console.log(1);
}else{
console.log(2);
}
});
这是jQuery文档中给出的示例: 。。。带有简单图像的页面:
<img src="book.png" alt="Book" id="book">
一旦加载了映像,就会调用处理程序
关于这个主题的更多信息将帮助您解决问题:
或者,如果您非常棒,您可以创建图像元素,添加源,并在加载时执行一些操作。不需要jQuery
var image = new Image();
image.onload = function() {
alert('image loaded');
};
image.src = 'image/image.jpg';
$('img').load(fnYourHandler)代码>非常感谢,这是一个简洁的答案!即使是换行代码宽度$(函数{}),也有可能在图像中得到零。我更新了答案,您也应该听图像加载。谢谢您的正确回答。