从DOM数组中删除一个DOM对象

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

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

有人可以教我如何删除该DOM吗?谢谢!


更正:它将返回一个包含您的页面的jQuery对象。 - nnnnnn
3个回答

5

.remove() 是 jQuery 的方法,所以您需要在其上调用 jQuery 对象。然而,.get 返回的是 DOM 元素。使用 .eq [文档] 来获取元素作为 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()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接