2015-09-15 153 views
4

我想选择具有特定类的所有ul > li > a > i元素并向它们添加链接属性。你可以去fiddle,明白我的意思。社交媒体图标链接属性

var twitter_url = 'twitter link'; 
var facebook_url = 'facebook link'; 
var gplus_url = 'google plus link'; 

if ($('ul.social i').hasClass('.fa-twitter')){ 
    $("ul.social a:nth-child(1)").attr("href", twitter_url); 
} 
if ($('ul.social i').has('.fa-facebook')){ 
    $("ul.social a:nth-child(2)").attr("href", facebook_url); 
} 
if ($('ul.social i').has('.fa-google-plus')){ 
    $('ul.social a').attr("href", gplus_url); 
} 

回答

2

试试这个

 var twitter_url = 'https://twitter.com/FameWaves_intl'; 
     var facebook_url = 'https://facebook.com/famewaves'; 
     var gplus_url = 'https://plus.google.com/famewaves'; 


     $('ul.social li').each(function(){ 
      var aLink = $(this).find('a'), 
       className = $(this).find('i').prop('class'); 
      switch(className) 
      { 
       case "fa fa-twitter": 
        aLink.attr("href", twitter_url); 
        break; 
       case "fa fa-facebook": 
        aLink.attr("href", facebook_url); 
        break; 
       case "fa fa-google-plus": 
        aLink.attr("href", gplus_url); 
        break; 
      } 

     }); 

这里是fiddle