2010-08-16 4 views
0

У меня отображается неупорядоченный список - каждый тег li содержит изображение с тегом span без него. Я хочу, чтобы атрибут title изображения отображался в теге span. Я использую это ниже, и он работает, но он отображает заголовки из ВСЕХ изображений в первом теге span ... Мне нужно как-то убедиться, что заголовок с изображения находится в собственном теге span. Я думаю, мне нужен способ, чтобы иметь уникальный идентификатор для каждого лития или каждый Li IMG ...jQuery изображение изображения в заголовке span

$(document).ready(function() { 
    $('#pressThumbs li img').fadeIn(function() { 
     var $this = $(this); 
     $("#description").append($(this).attr('title')); 
    }); 
}); 

Благодаря

Роб

ответ

3

идентификаторов должны быть уникальными. Таким образом, вы можете иметь только одинdescription id на странице.

Изменение ID description к классу вместо этого, и сделать это:

Попробуйте:http://jsfiddle.net/gsFnW/

$(document).ready(function() { 
    $('#pressThumbs li img').fadeIn(function() { 
     var $this = $(this); 
     $this.next('.description').append($this.attr('title')); 
    }); 
}); 

Пожалуйста, обратите внимание, что это предполагает <img> и <span> находятся рядом друг с другом. Я не могу сказать точно, не видя вашей разметки. Если между ними есть другой элемент, сделайте это вместо этого.

$(document).ready(function() { 
    $('#pressThumbs li img').fadeIn(function() { 
     var $this = $(this); 
     $this.siblings('.description').append($this.attr('title')); 
    }); 
}); 
+0

Спасибо за быстрый ответ! Это работает! Роб – Rob

+0

@Rob - Добро пожаловать. : o) – user113716

+0

Я сделал модификацию, чтобы показать название только на hover [http://jsfiddle.net/gsFnW/48/](http://jsfiddle.net/gsFnW/48/) –

1

Предполагая эту разметку

<ul> 
    <li><img src="bla" title="sometitle" /><span class="description" /></li> 
    <li><img src="bla" title="sometitle" /><span class="description" /></li> 
</ul> 

Это должно работать.

$(document).ready(function() 
{ 
    $('#pressThumbs li img').fadeIn(function() 
    { 
      var $this = $(this); 
      $this.siblings(".description").html($this.attr('title')); 
    }); 
}); 

Ты проблема заключается в том, что вы используете атрибут #decription ID, который может появиться только один элемент DOM. Вместо этого используйте класс, который может появиться, и многие.

Надеюсь, это поможет.

Смежные вопросы