【发布时间】:2014-06-28 08:44:42
【问题描述】:
我正在尝试替换未找到或宽度或高度为 1 像素的图像。我设法在 PHP 中做到了这一点:
$imgName = $resultList->IMAGE1; // ex http://www.domain.com/image.png
if (@file_get_contents($imgName) && $imgName !== 'h') {
// detects the image size (NOT based on width and height attributes)
$imgNamearray = getimagesize($imgName);
$size = $imgNamearray[3];
if ($size == 'width="1" height="1"') {
$imgName = $base_path . 'uploads/no-img.jpg';
}
} else {
$imgName = $base_path . 'uploads/no-img.jpg';
}
我在 jQuery 中尝试了这段代码:
$('body').append('<div id="init"><img id="myimg" src="http://www.google.co.uk/intl/en_com/images/srpr/logo1w.png" /></div>');
$('#init').hide();
$('#myimg').bind("load",function(){
alert(this.height)
})
可以在http://jsfiddle.net/WMpSy/ 的小提琴中找到,但我是 jQuery 的菜鸟,请帮帮我。非常感谢。
【问题讨论】:
-
是的,但它不检测 1*1 像素的图像。
-
@jfriend00 问题是脚本从那里检测宽度属性的宽度,而不是检测实际图像宽度。我正在尝试检测图像的实际宽度。例如,如果我在图像标签上指定了宽度和高度,我不希望检测到它,我希望检测到数据原始值图像的真实宽度。 (原始数据来自我正在使用的延迟加载插件)
标签: javascript php jquery