jQuery - 如何将jQuery对象转换为使用getElementById返回的对象类型

3

我偶尔会遇到这样的情况,某些代码必须使用document.getElementById()才能正常工作(例如,使用Google Maps API),但我不知道原因。是否有一种jQuery方法或相对简单的方式可以将jQuery对象转换为类似于使用document.getElementById()返回的对象?


1
FYI:那种“元素”通常被称为DOM元素,与jQuery对象相对。 - Blazemonger
3个回答

8

类似这样的:

$("#myId").get(0)

或者

$("#myId")[0]

2
жіЁж„ҸпјҡеңЁjQueryеҮҪж•°дёӯпјҢеҰӮ.each()е’Ң.click()пјҢthisзӯүдәҺ$(this).get(0)гҖӮ - SpYk3HH
1
非常感谢。运行得非常顺利! - Kevin Beal

2
你可以使用 $("#someDiv").get(0),它将返回 HTMLElement 对象(与调用 document.getElementById() 返回的对象相同)。

@kanaka - 正确。然而,使用get(#)允许您执行诸如从数组末尾获取元素的负索引之类的操作。使用方括号表示法将无法实现这一点。 - Mitch Dempsey
真的,但问题是关于document.getElementById,它总是返回单个元素。 - kanaka
@kanaka 而且使用 [0] 对于 jQuery 来说处理更少 :) - Ian

1

是的,您可以使用以下方法获取底层DOM节点:

$(myselector)[0]

或者

$(myselector).get(0)

除了上述内容之外:

$(myselector).get(),如果没有索引,将返回一个DOM节点数组。


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