js动态改变img的src为啥部分图片可以显示,部分图片显示不了
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js动态改变img的src为啥部分图片可以显示,部分图片显示不了相关的知识,希望对你有一定的参考价值。
二楼大侠,你的方法只是控制图片大小。我的问题是有一些图片它不显示,而有一些图片可以显示!
楼主,你要的代码如下:<script language=javascript>
var flag=false;
function DrawImage(ImgD)
var image=new Image();
image.src=ImgD.src;
if(image.width>0 && image.height>0)
flag=true;
if(image.width/image.height>= 140/180)
if(image.width>140)
ImgD.width=140;
ImgD.height=(image.height*140)/image.width;
else
ImgD.width=image.width;
ImgD.height=image.height;
/*ImgD.alt=image.width+"×"+image.height;*/
else
if(image.height>180)
ImgD.height=180;
ImgD.width=(image.width*180)/image.height;
else
ImgD.width=image.width;
ImgD.height=image.height;
/*ImgD.alt=image.width+"×"+image.height;*/
/*else
ImgD.src="";
ImgD.alt=""
*/
</script>
把以上这段代码加在<head></head>之间
然后在图片显示的时候,用这种方式:
<img src='xxx.gif' border=0 onload='javascript:DrawImage(this);'> (其中xxx.gif是你要显示的图片)
以上代码我过N次了。。你也可以修改其中的几个数字来达到图片按照你的要求显示(比如你觉得上面这段代码中的图片宽高缩小后还是大了点,你可以再调小一点。其中140与180,分别代表宽和高,你修改的时候一定要注意如果修改140为120,则180一定要修改为160,也就是说要修改就两个值都减去同一个值。总之这两个值相减要等于40..
具体参考网址:
以上网站我都采用了这种方法,很有效的让图片按照比例缩小而不会变形。像是做到了图片略缩图的效果一样,很不错哦。。。 参考技术A 看看路径是否正确
用js动态的改变img标签里面的src属性实现图片的循环切换
JS:根据循环切换的条件可以用
document.getElementById(‘‘).src=‘‘设置,
或者jquery方法:
$(‘#id‘).attr(‘src‘,‘图片名称’);
具体:
if(true) {
document.getElementById(‘id‘).src=‘a.png‘;
//or $(‘#id‘).attr(‘src‘,‘a.png‘);
}else {
document.getElementById(‘id‘).src=‘b.png‘;
//or $(‘#id‘).attr(‘src‘,‘b.png‘);
}
//上面的红色的和红色的对应,蓝色的和蓝色的是对应的。
以上是关于js动态改变img的src为啥部分图片可以显示,部分图片显示不了的主要内容,如果未能解决你的问题,请参考以下文章
怎样用JS动态的改变img标签里面的src属性实现图片的循环切换。