2014-09-02 48 views
0

這是我的第一個問題。首先,請看這段代碼。jQuery/HTML在找到的元素上操作

$('#btn').click(function() { 
if ($(this).parent().find('a').attr('href') == $("#search_list").find('a').attr('href')) { 
    $(secondelement).css(.......) ///any operation. 
} 
}); 

我的問題是如何對找到/匹配/第二個元素執行操作?在這種情況下,#search_list中的元素'a'的href等於#btn的父元素中'a'的href。

+0

商店的元素首先參考? 'var aElements = $(「#search_list」)。find('a');'。請注意,'$(「#search_list」)。find('a')。attr('href')'將* always#獲得'#search_list中** first **'a'元素的'href'值'。那真的是你想要的嗎? – 2014-09-02 18:25:29

+1

歡迎來到SO!你將不得不發佈相關標記(HTML)。 – PeterKA 2014-09-02 18:25:53

+0

@FelixKling No Felix。我想通過#search_list中的所有'a'元素,當有一個'a'的href與提供的href相等時,我想對其執行操作。 – 2014-09-02 18:31:38

回答

1

你有什麼是

$(this).parent().find('a').attr('href') == $("#search_list").find('a').attr('href') 

它獲得的第一個發現停泊在父href屬性和比較對第一個找到的錨點#search_listattr將返回集合中的屬性爲第一要素)。

要獲得相同的元素,您可以改爲使用屬性選擇器,並在#search_list中選擇第一個錨點,如果它與父級中的第一個錨點具有相同的href。

編輯:讓具有相同HREF作爲父元素的第一錨錨的任何,你會怎麼做:

$('#btn').on('click', function() { 
    $('#search_list a[href="' + $(this).parent().find('a').attr('href') + '"]').css('color', 'red'); 
}); 
+0

這不是原來的代碼雖然;)(也許你想擴大)。 – 2014-09-02 18:26:53

+0

@FelixKling - 現在呢? – adeneo 2014-09-02 18:27:46

+0

我想......儘管我懷疑'a [href = ...]'實際上不是OP真正想要的。 – 2014-09-02 18:29:40