2012-10-12 59 views
0

我需要抓住一個特定的元素。我點擊a標記時觸發了一個事件。我遇到了問題,因爲我只能影響標籤所在的ul。我想要選擇的元素有一類target。顯而易見的答案是選擇target,但有多個目標類。我的問題是我如何瞄準我想要的元素。以下是代碼。針對元素樹的方式

<div id="section"> 
    <div id="target"> 
     Here is the div that I want to target. But I can't target it. 
    </div> 

    <div> 
     <ul> 
      <li></li> 
      <a>Clicking here triggers the event.</a> 
      <li></li> 
     </ul> 
    </div> 
</div> 

<script> 
    $(a).parentsUntil('#section').children(':gt(0)').children(':gt(2)').css('color','red'); 
</script> 
+1

'$( 'A')。家長( '#節')。找到( '#目標')。CSS(」顏色','紅');' – Ohgodwhy

+0

@Ohgodwhy謝謝。我得到它的工作。發佈它作爲答案,你將獲得信貸。 – jason328

回答

1
$('a').parents('#section').find('#target').css('color', 'red'); 
1

首先你需要在DOM已準備就緒處理程序,以附上代碼..

$(function() { 
    // Your code Here 
}); 

其次你的選擇是錯誤的

應該是$('a')而不是$(a)

試試這個代碼

$(this).closest('div').prev('#target').css('color', 'red'); 

OR

$('a').parents('#section').find('#target').css('color', 'red'); 

CHECK DEMO

$(function() { 
    $('a').on('click', function() { 

     $(this).closest('div').prev('#target').css('color', 'red'); 
    }); 
});​ 
+0

Dom準備好是沒有必要的,因爲它的工作原理。感謝選擇器語法,它在我的代碼中是正確的,但是當我在這裏發佈它時,我忘了添加單引號。感謝您的幫助。 – jason328

+0

檢查編輯..... –

+0

@ jason328 ..這是沒有必要的,因爲你已經包含你的腳本後的HTML元素,但我覺得這是一個很好的做法 –