var obj = document.getElementById("img"+pho[0]); if(obj) obj.src='../images/itemid/113360/1404179284640.png?t='+Math.random(); else alert("obj is null")
我方法的全部代码: //方法是显示一个隐藏的DIV,其中需要设置图片的压缩比例。 function upload(del) {document.getElementById("itemIdMine").value=del.name; //图片地址 ,存放的是点击photoAdd 多张图片的地址字符串。 var photoAdd = document.getElementById(del.name+"Photo").value;// 先清空所有的图片地址 var imgList=document.getElementsByName("img"); for(var j=0;j<imgList.length;j++){ imgList[j].src=""; } if(!(photoAdd=="" || photoAdd == null)) { //解开用逗号分隔 var photo = photoAdd.split(","); for(var i = 0 ; i < photo.length ; i++) { //解开存放的位置,和图片地址 var pho = photo[i].split("※"); //找到图片地址 var obj = document.getElementById("img"+pho[0]); //预制压缩 var img =new Image(); //图片预加载 img.src=pho[1]; var w = 150/img.width; var h = 100/img.height; if(w<h){//这里的img.width和img.height为原图大小 obj.width=w*img.width; obj.height=w*img.height; }else{ obj.width=h*img.width; obj.height=h*img.height; } //赋值图片地址 //obj.src='pho[1]'; obj.setAttribute("src",pho[1]); } }document.getElementById("picMaintain").innerHTML = del.value; //显示DIV EV_modeAlert('envon'); } 我的全部代码 请帮忙指正
var w = 150/img.width; var h = 100/img.height; if(w<h){//这里的img.width和img.height为原图大小 obj.width=w*img.width; obj.height=w*img.height; }else{ obj.width=h*img.width; obj.height=h*img.height; } 估计是图片没有加载完,宽度高度没有获取到,把上面这段代码放到onload事件里面试下。img.onload = (function (_obj) { return function () { var w = 150 / this.width; var h = 100 / this.height; if (w < h) { //这里的img.width和img.height为原图大小 _obj.width = w * this.width; _obj.height = w * this.height; } else { _obj.width = h * this.width; _obj.height = h * this.height; } }; })(obj);
if(obj)
obj.src='../images/itemid/113360/1404179284640.png?t='+Math.random();
else alert("obj is null")
//方法是显示一个隐藏的DIV,其中需要设置图片的压缩比例。
function upload(del)
{document.getElementById("itemIdMine").value=del.name;
//图片地址 ,存放的是点击photoAdd 多张图片的地址字符串。
var photoAdd = document.getElementById(del.name+"Photo").value;// 先清空所有的图片地址
var imgList=document.getElementsByName("img");
for(var j=0;j<imgList.length;j++){
imgList[j].src="";
}
if(!(photoAdd=="" || photoAdd == null))
{
//解开用逗号分隔
var photo = photoAdd.split(",");
for(var i = 0 ; i < photo.length ; i++)
{
//解开存放的位置,和图片地址
var pho = photo[i].split("※");
//找到图片地址
var obj = document.getElementById("img"+pho[0]);
//预制压缩
var img =new Image(); //图片预加载
img.src=pho[1];
var w = 150/img.width;
var h = 100/img.height;
if(w<h){//这里的img.width和img.height为原图大小
obj.width=w*img.width;
obj.height=w*img.height;
}else{
obj.width=h*img.width;
obj.height=h*img.height;
}
//赋值图片地址
//obj.src='pho[1]';
obj.setAttribute("src",pho[1]);
}
}document.getElementById("picMaintain").innerHTML = del.value;
//显示DIV
EV_modeAlert('envon');
}
我的全部代码 请帮忙指正
var h = 100/img.height;
if(w<h){//这里的img.width和img.height为原图大小
obj.width=w*img.width;
obj.height=w*img.height;
}else{
obj.width=h*img.width;
obj.height=h*img.height;
}
估计是图片没有加载完,宽度高度没有获取到,把上面这段代码放到onload事件里面试下。img.onload = (function (_obj) {
return function () {
var w = 150 / this.width;
var h = 100 / this.height;
if (w < h) { //这里的img.width和img.height为原图大小
_obj.width = w * this.width;
_obj.height = w * this.height;
} else {
_obj.width = h * this.width;
_obj.height = h * this.height;
}
};
})(obj);
不是 i 么?
我做的是:同一个DIV中放置了9张图片,当我选择不同的物品时,显示的9张图片是不一样的。我不能做成有多少物品加载多少个DIV的。我只是做选择不同的物品,用JS跟换图片的。而且,IE8完好,但是就IE9、10里面只显示框框,根本就不显示图片的。