2013-04-25 2 views
0

У меня есть кусок кода, который кто-то написал мне так:Как атр класс

var $me = $('.me'), 
     crazyNumber = 99999999, 
     allOfYou = [ 
      { 
       elements: $me.parentsUntil('.you'), 
       target: $me.parentsUntil('.you').parent() 
      }, 
      { 
       elements: $me.nextUntil('.you'), 
       target: $me.nextUntil('.you').andSelf().filter(':last').next() 
      }, 
      { 
       elements: $me.prevUntil('.you'), 
       target: $me.prevUntil('.you').andSelf().filter(':last').prev() 
      } 
     ], 
     sorted = allOfYou.sort(function (objA, objB) { 
      var a = objA.elements.length + 1 || crazyNumber, 
       b = objB.elements.length + 1 || crazyNumber; 
      return a - b; 
     }); 

    $('#who').html('you ' + sorted[0].target.data('verb') + ' me'); 

В конце концов div#who получает HTML от target.data('verb') Я хотел бы получить класс, но вместо этого я не понимаю код, я попробовал:

$('#who').html(sorted[0].target.data.class); 
$('#who').html(sorted[0].attr('class')); 
$('#who').html(sorted[0] + $(this).attr('class')); 

И многое другое, ничего не похоже на работу (Im не знаком с целевой Jquery ..)

Example at JsFiddle

ответ

1

Вы были рядом, замените код этого:

$('#who').html(sorted[0].attr('class')); 

с этим:

$('#who').html(sorted[0].target.attr('class')); 
+0

не работает, пожалуйста, дайте мне пример кода – Youss

+1

@Youss: '

', класс для div, который имеет data-глагол «found» is 'you' , правильно? –

+0

Да, измените его на что-то еще, и вы заметите, что он не работает. Вы получаете класс «вы» от первого div – Youss

3

Возможно, вы ищете это -

$('#who').html(sorted[0].target.attr('class')); 

http://jsfiddle.net/mohammadAdil/FyqsW/3/

+0

Это получить неправильный класс .. – Youss

+1

какой класс вы ожидаете? –

+0

Класс из div, который имеет данные-глагол «found» – Youss

1

объект JQuery сохраняется в цель.

sorted[0].target.attr("class"); 
Смежные вопросы