从DOM数组中删除DOM对象

时间:2012-08-15 11:41:52

标签: javascript jquery dom jquery-mobile

如果我使用此$("div:jqmData(role='page')"),它将返回我DOM对象中的页面数组。但是jquerymobile会创建一个默认的空白页面,它没有任何ID,因此我无法通过其ID获取它。相反,我使用$("div:jqmData(role='page')").get(0)来获取表示创建的默认页面jquery的第一个DOM对象。

但是如果我使用$("div:jqmData(role='page')").get(0).remove()它不会删除页面,但它会返回错误。

任何人都可以教我如何删除那个DOM吗?谢谢!

3 个答案:

答案 0 :(得分:5)

.remove()是一个jQuery方法,所以你需要一个jQuery对象来调用它。 .get返回一个DOM元素。使用.eq [docs]代替将元素作为jQuery对象:

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

答案 1 :(得分:3)

.get()函数返回DOM元素本身,因此您将无法在其后链接jQuery函数(例如.remove())。如果您需要这样做,请使用.eq()方法返回包含在jQuery对象中的单个DOM元素,允许您链接。

答案 2 :(得分:1)

它不起作用,因为.get()返回底层DOM元素, jQuery对象。您可以使用.eq()来访问特定索引处的jQuery对象。

所以这应该有效:

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