24

我在下面试过这个。我认为$("div.tab_select")[0]的返回对象不是 jQuery 对象,但我什至不能使用纯 JavaScript 方法。

有没有办法让它成为 jQuery 对象?例如$($("div.tab_select")[0]) ..我知道这很愚蠢;

感谢您的阅读。

var tmp = $("div.tab_select")[0]; 
alert(tmp); //This gives me HTMLDivElement collectly. But I can't use any of javascript..

alert(tmp.nodeName); //But this give me error "Uncaught TypeError: Cannot read property 'nodeName' of undefined"

tmp.hide(); //Neither, I can't use this.
4

4 回答 4

39
// all divs with tab_select class
$('div.tab_select')

// first div with tab_select class
$('div.tab_select:first')

// or CSS pseudo selector which is slightly faster than the first jQuery 
// shortcut 
$('div.tab_select:first-of-type')

// or
$('div.tab_select').first()

// or
$('div.tab_select:eq(0)')

// or
$('div.tab_select').eq(0)
于 2012-05-11T19:44:56.410 回答
1

如果您想要一个 jQuery 对象,请var tmp = $("div.tab_select:first")改用。

var tmp = $("div.tab_select")[0]将返回 DOM 元素(如果存在)

于 2012-05-11T19:45:29.937 回答
1

做吧$(tmp)。[0] 为您提供 HTML 元素而不是 JQuery 实例。

于 2012-05-11T19:45:54.303 回答
0

我在某处读到 css 选择器更快。

$('div.tab_select:nth-child(n)').<method>

这是例如

于 2012-05-11T22:11:31.083 回答