簡體   English   中英

jQuery如何根據其包含的文本添加一個類以跨越dl?

[英]jquery How do I add a class to span within a dl based on the text it contains?

我希望能夠將class =“ st_sharethis”添加到菜單鏈接:在此站點上告訴朋友http://www.easyspacedesign.com/fh/ConnectBell_/ 在我們使用的cms中,無法將特定的類或id添加到菜單鏈接中,因此必須使用jquery來完成。

因此,我將不得不基於標簽內的span標簽內的文本來執行此操作。

到目前為止,我已經嘗試過:

  $('.main_menu span:contains("Tell A Friend")').attr('class','st_sharethis');

  $('.main_menu span').each(function ()
  {
    if ($(this).text() == "Tell A Friend")
    $(this).attr('id','rev3');
  }

都沒有奏效。

如果此菜單項始終是最新的:

$('#menu dl dt:last a').addClass('myclass');

另外,您在此菜單項last有特定的班級,因此您可以:

$('dt.last').addClass('myClass');

或者,您可以僅測試鏈接的內容:

$('#menu dl dt a span:contains("Tell A Friend")').parent().addClass('myClass');

以下內容將一個類和id添加到該元素。

$('.main_menu span:contains("Tell A Friend")')
    .addClass('st_sharethis')
    .attr('id', 'rev3');

您的代碼很好,您只需添加“);” 在末尾!

 $('.main_menu span:contains("Tell A Friend")').attr('class','st_sharethis');

   $('.main_menu span').each(function ()
   {
     if ($(this).text() == "Tell A Friend")
     $(this).attr('id','rev3');
   }
 );   // ADD this line !

但是,當然最好只鏈接命令:

 $('.main_menu span:contains("Tell A Friend")')
  .attr('class','st_sharethis')
  .attr('id','rev3');

這適用於您的標記:

$('#menu span:contains("Tell A Friend")')
           .addClass('st_sharethis')
           .attr('id','rev3');

實時示例: http//jsfiddle.net/ydFFR/

如果是最后一個,請嘗試

$('a.main_menu.last').find('span').addClass('st_sharethis');

暫無
暫無

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

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