2012-08-15 52 views
3

如果我使用這個$("div:jqmData(role='page')")它會返回我在我的DOM對象中的頁面數組。但jquerymobile創建一個沒有任何ID的默認空白頁面,所以我不能通過它的ID實際得到它。相反,我使用$("div:jqmData(role='page')").get(0)獲取代表創建的默認頁面jquery的第一個DOM對象。從DOM數組中刪除一個DOM對象

但如果我使用$("div:jqmData(role='page')").get(0).remove()它不會刪除頁面,但它會返回錯誤。

任何人都可以教我如何刪除該DOM?謝謝!

+0

_「將返回我的頁面數組」 _ - 更正:它會返回一個jQuery對象與你的頁面。 – nnnnnn 2012-08-15 11:49:42

回答

5

.remove()是一個jQuery方法,所以你需要一個jQuery對象來調用它。 .get雖然返回一個DOM元素。使用.eq[docs],而不是獲取該元素爲jQuery對象:

$("div:jqmData(role='page')").eq(0).remove() 
3

.get()函數返回的DOM元素本身,所以你將不能夠後鏈jQuery的功能(如.remove())。如果您需要這樣做,請使用.eq()方法,該方法返回包裝在jQuery對象中的單個DOM元素,從而允許您鏈接。

1

它不起作用,因爲.get()返回的是底層DOM元素,而不是的jQuery對象。您可以使用.eq()訪問特定索引處的jQuery對象。

所以這應該工作:

$("div:jqmData(role='page')").eq(0).remove()