2011-09-07 48 views
0

我的jQuery的第一个元素看起来像这样的jQuery:锚标记列表

$('#content a[href*="Something"]') 

,并返回该

[<a href="Something1">blah</a>, 
<a href="Something2">blah</a>, 
<a href="Something3">blah</a>, 
<a href="Something4">blah</a>] 

我试图用:first拿到的第一个元素。

$('#content a[href*="Something"]:first') 

但它不工作。 #content部分似乎是造成问题。我怎样才能解决这个问题,而不删除#content

编辑:我的HTML

<div id="content> 
    <a href="Something1">blah</a> 
    <a href="Something2">blah</a> 
    <a href="Something3">blah</a> 
    <a href="Something4">blah</a> 
</div> 
+0

您能否给出完整或详细的HTML代码? – Usman

回答

0

我不知道为什么:first工作不适合你,我的作品在类似的情况,但如果没有其他作品,请尝试使用filter()代替:

$('#content a[href*="Something"]').filter(':first') 
+0

正是我正在寻找。谢谢! – Brand

-1

使用eq selector

$('a[href*="Something"]:eq(0)') 

如果你想使用上下文那就试试这个。

var context = $('#content'); 
var firstElement = $('a[href*="Something"]:eq(0)',context); 
+0

元素为0索引,所以这应该是$('a [href * =“Something”]:eq(0)') – longstaff

+0

@shortstick:已更正,但是其用意是使用适当的选择器。 – dhinesh

+0

:首先是有效的方法为:eq(0):http://stackoverflow.com/questions/1234087/are-jquerys-first-and-eq0-selectors-functionally-equivalent – longstaff