2010-03-24 86 views
2

我有我想要輸出圖像列表的以下jQuery。問題是我無法得到'這個'來找到源代碼。它當前是一個輸​​出爲HTMLImageElement的對象。我如何從這個對象獲取圖像源?從HTMLImageElement對象獲取圖像源

$("#imgs li.images img").each(function(i) { 
    $("#list").append("<li><img src=\""+this.attr("src")+"\" /></li>"); 
}); 

我目前得到的錯誤this.attr不是一個函數。

回答

12

this是DOMNode,而不是jQuery對象。你可以立即訪問this.src,或者,如果你想使用jQuery,$(this).attr('src'),儘管做同樣的事情將是一個彎路。

+0

arrgh認爲這是我忽略的一些小東西。 – corymathews 2010-03-24 15:24:23

+1

注意:這兩種方法並不相同。雖然jQuery方法執行'this.getAttribute('src')'並因此獲得了標記中給出的屬性,處理this.src'並且通常是一個絕對的(r)地址(帶有協議,域等) – kubi 2015-04-23 21:00:08

2

使用$(this)而不是this

0

問題是你使用'this'。這是一個用於面向對象編程的特殊關鍵字,用於指代對象自己的屬性