2014-02-16 109 views
0

我正在嘗試從在線教程學習javascript。 我不明白第12行,這些代碼行是什麼?什麼是outImage,thisImage.outImage和Image()?Image()是一個javascript內置對象嗎? thisImage.outImage是一個對象嗎?或只有outImage是一個對象?非常感謝,任何答案都表示讚賞。 enter image description here如何在javascript中添加對象到內置對象?

+1

'thisImage'是傳遞給函數的對象(在本例中爲圖像)'outImage'是在對象上定義的新屬性。 '新的圖像();'正在創建一個新的圖像。 - 真的很簡單! –

+0

檢出這個問題:[是否有JavaScript Image對象的規範?](http://stackoverflow.com/questions/15233483/is-there-a-specification-for-javascript-image-object) – shawnzhu

+0

@Niet the Dark Absol,是Image()的一個對象? 是document.images [i]一個對象? – sopanha

回答

1

看行6

setupRollover(document.images[i]); 

這就是調用該函數。

function setupRollover (thisImg) { /* ... */ } 

所以thisImg === document.images [i];

document是一個瀏覽器內置對象(不是內置於JavaScript中,而是由每個瀏覽器放入的對象),它允許您訪問頁面上的HTML(又名:「DOM」)。

so,document.images是DOM上所有圖像的列表。

var img = new Image(); img.src = "...";產生一個新的圖像,在HTML中輸入<img src="...">相同的方式給你一個新的形象。

不同之處在於,現在您使用JavaScript而不是使用HTML,因此您可以更改並移動它,並將其傳遞給不同的功能。

難題唯一的另一個讓人困惑的地方是,你幾乎可以將任何東西附加到JavaScript中的其他任何東西上。

var img = new Image(), 
    img2 = new Image(); 

img.otherImage = img2; 

這並沒有做任何特別的或魔術。
這只是,現在任何時候我在該腳本中要求img.otherImage,它會給我img2

+0

在此代碼中'var img = new Image()','img'是一個對象? 'Image()',它是一個對象還是一個類?謝謝 – sopanha

+1

JavaScript中沒有「類」。儘管如此,他們最終還是會來。 Image是一個構造函數,它返回一個圖像對象的新實例。所以它看起來像一個班。'var img = new Image();'所以它是生成圖像對象的函數。 – Norguard