2014-05-12 3 views
0

Я хочу, чтобы добавить класс для дочернего элемента, как в примере:Получение atribute и добавление класса

<ul> 
    <li class="menu-item"> 
     <a href="#" title="forum"> 
      <i class="fa"></i> 
      Forum 
     </a> 
    </li> 
</ul> 

и JS:

$(document).ready(function() { 

var title = $(".menu-item a").attr('title'); 

$(".menu-item a i").addClass(
    function(title) { 
     return "fa-" + title; 
    }); 
}); 

Я не знаю, как ремонт этого JavaScript.

+1

Вы пытаетесь добавить класс к '' тег, или заменить все классы? –

ответ

2

Я думаю, что вы ищете что-то больше, как это:

$(".menu-item a").each(function(){ 
    var title = $(this).attr('title'); 

    $(this).find("i").addClass("fa-" + title); 
}); 

Это будет цикл по каждому a и получить свой титул. Затем он добавит класс к своему потомку.

+0

Он работает, спасибо! – Damian

0

это будет пройти через каждый i в .menu-item затем добавить атрибут заголовка родителя к классу ...

$('.menu-item i').addClass(function() { 
    return 'fa-' + this.parentNode.title; 
}); 

http://jsbin.com/peyofira/2/edit?html,js,output

0

это работает:

$(document).ready(function() { 
var title = "fa-" + $(".menu-item a").attr('title'); 
$(".menu-item i").addClass(title); 
}); 
Смежные вопросы