2016-02-22 92 views
1

這是我的問題:即時嘗試創建圖像選擇器,我的意思是顯示在屏幕上的圖像集合,其中我可以選擇一個並將其存儲在var中。這是爲所述陣列中的代碼:Javascript圖像陣列問題

<script typre="text/javascript"> 
    var img = new Array(); 
    img[0] = new Image(); 
    img[0].src = "../images/poggiatesta2.jpg"; 
    img[1] = new Image(); 
    img[1].src = "../images/poggiatesta1.JPG"; 

    for (var i = 0; i < img.length; i++) { 
     document.write(img[i]); 
    }; 

</script> 

當我運行它,它會顯示[對象HTMLImageElement]代替圖像!我該怎麼辦??謝謝大家!

+0

你有沒有擡頭[指出你應該使用'實況爲'HTMLImageElement'文檔ment.body.appendChild'而不是?](https://developer.mozilla.org/en-US/docs/Web/API/HTMLImageElement) – h2ooooooo

回答

2

因爲img[i]是一個對象和document.write將通過調用img[i].toString()其寫入作爲它的字符串表示。

如果你想顯示的圖像,然後使用

for (var i = 0; i < img.length; i++) { 
     document.body.appendChild(img[i]); 
}; 
+1

爲什麼downvote? – gurvinder372

1
var img = new Image(); 
img.src = "../images/poggiatesta2.jpg"; 
document.write(img.outerHTML); 

使用outerHTML屬性,以便顯示它

0

很明顯,因爲for循環會打印IMG [0],IMG [1]沒有圖像 的SRC你可以寫img[i].src

var img = new Array(); 
 
     img[0] = new Image(); 
 
     img[0].src = "../images/poggiatesta2.jpg"; 
 
     img[1] = new Image(); 
 
     img[1].src = "../images/poggiatesta1.JPG"; 
 
    
 
     for (var i = 0; i < img.length; i++) { 
 
      alert(img[i].src); 
 
     };

+0

Downvoters請解釋 – Dhara