簡體   English   中英

如何定位與所有其他列表項具有相同類的特定列表項

[英]How can I target a specific list item that has the same class as all other list items

好的,所以我的腳本允許我在textarea元素中輸入文本,並將其添加到ID為“ Glist”的有序列表中的li元素中。 我不僅將文本添加到我添加到排序列表中的每個li,而且還添加了以下其他內容,它們都僅使用CSS顯示其他圖像。 其中一個類“ Selimg”顯示按鈕的sprite圖像,上面顯示“ select”。 現在,我添加到ol中的每個li元素都具有下面的所有元素以及類。 因此,每個li元素都將具有一個帶有“ Selimg”類的div,該類顯示例如選擇的按鈕的圖像。 當我使用Selimg類單擊該div時,將向div添加一個名為“ Selected”的新類,這將更改li的背景顏色以指示已被選中。 問題是,我只想將“ Selected”類添加到具有單擊的Selimg類的div中,而不是將所有li元素都添加到“ Selimg”類中。 如何使用onclick事件處理程序或使用js或jquery的任何其他方式來做到這一點? 這是html:

<ol id="GList">
<li class="MyList">
<p class="bulletp"></p>
<!--This Selimg class displays an image of a button that says select-->
<div class="Selimg"></div>
<!--When a user presses this select button, I want to append a class only to the   specific li element the user has pressed the select button on. -->
<div class="edit1"></div>
<div class="Del"></div>
<div class="progress"></div>
<div class="ShowMore"></div>
<div class="CheckedGoal"></div>
<div class="PCompetePercent"></div>
<div class="ShowMoreBlock"></div>
<div class="goalTxt"></div>
</li>
</ol>

單擊該按鈕時,可以使用.closest()查找祖先li元素

$('.Selimg').click(function(){
    $(this).closest('li').addClass('someclasss')
    //or $(this).parent().addClass('someclasss') since the li is the parent of the button
})

演示: 小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM