我想使用img标签的innerhtml更改图像,当我点击它时,我的代码在下面给出
tempData +='<td >';
tempData +='<img src="'+frontImg+'" id='+ii+' onClick="flipImage(this.id);" />';//from where flipImage call
tempData +='</td>';
它工作正常,但是当它从函数返回时它会改变图像但是我想在flipImage
返回之前更改它
function flipImage(m)
{
var jsonLen = jsonImages.images.length;
var imgNumber = finalImageArray[m];
for(jsn = 0;jsn <jsonLen ;jsn++)
{
if(jsonImages.images[jsn].imageKey== imgNumber)
{
realImage = jsonImages.images[jsn].imagePath;
var element = document.getElementById(m);
// var mg = '<img src="bool.jpg" />'; // change when this line execute what should i put here.?
//element.innerHTML=mg; want like this.
//this is actual code but it change image after returning the function so i don't want this.
element.innerHTML=realImage;
element.setAttribute('src',realImage);
element.setAttribute('onclick', '');
break;
}
}
}
所以我想在flipImage
返回之前更改图片。
这只是一个示例代码和
答案 0 :(得分:1)
您不能将innerHTML
用于<img />
标记,因为它们内部没有HTML,它们是单例且没有内部内容。
只需使用imgElement.setAttribute('src', 'http://...');
即可更改图片。