簡體   English   中英

JS - 將 Class 添加到包含某個單詞的鏈接

[英]JS - Add Class to link that contains a certain word

我正在嘗試使用 Jquery 將 class 添加到包含某個關鍵字“關鍵字”的所有鏈接。 任何幫助將非常感激

 $(document).ready(function(){ $('.list').each(function(){ var $this = $(this); if($this.text().indexOf('Keyword') > -1) $this.closest('.list a').addClass('selected-link') }) })
 .selected-link { color:red; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="list"> <li><a href="#">Keyword</a></li> <li><a href="#">Link 1</a></li> <li><a href="#">Link 2</a></li> </ul>

您需要找到一個內部 li 標簽作為$this.find('a')$this.text()是 li 標簽的內容

 $(document).ready(function(){ $('.list').each(function(){ var $this = $(this); if($this.find('a').text().indexOf('Keyword') > -1) $this.find('a').addClass('selected-link') }) })
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="list"> <li><a href="#">Keyword</a></li> <li><a href="#">Link 1</a></li> <li><a href="#">Link 2</a></li> </ul>

而是迭代.list a s - <a> s,它們是.list的后代:

 $('.list a').each(function() { var $this = $(this); if ($this.text().indexOf('Keyword') > -1) { $this.addClass('selected-link'); } });
 .selected-link { color: red; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="list"> <li><a href="#">Keyword</a></li> <li><a href="#">Link 1</a></li> <li><a href="#">Link 2</a></li> </ul>

請注意,對於這種微不足道的事情,不需要像 jQuery 這樣的大型庫,這在 vanilla JS 中很容易實現:

 for (const a of document.querySelectorAll('.list a')) { if (a.textContent.includes('Keyword')) { a.classList.add('selected-link'); } }
 .selected-link { color: red; }
 <ul class="list"> <li><a href="#">Keyword</a></li> <li><a href="#">Link 1</a></li> <li><a href="#">Link 2</a></li> </ul>

我想你正在尋找這個?

 $(document).ready(function() { document.querySelectorAll('.list a').forEach(el=> { if (/Keyword/.test(el.textContent) ) { el.classList.add('selected-link') } }) })
 .selected-link { color:red; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="list"> <li><a href="#">Keyword</a></li> <li><a href="#">Link 1</a></li> <li><a href="#">Link 2</a></li> </ul>

暫無
暫無

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

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