我只是陷入了一个简单的jQuery问题。
我正在尝试每个span
元素prependTo p
元素,但jQuery重复每个跨度3次(因为我有3个span元素)。好的,很难解释。
只需查看小提琴代码 - http://jsfiddle.net/fTjcy/1/
HTML:
<div class="events">
<div class="event">
<span class="red">31.08.11 - </span>
<p>...</p>
</div> <!-- END OF New -->
<div class="event">
<span class="red">28.08.2011 - </span><p>...</p>
</div> <!-- END OF New -->
<div class="event">
<span class="red">20.08.2011 - </span><p>...</p>
</div> <!-- END OF New -->
</div>
我想实现:
<div class="events">
<div class="event">
<p><span class="red">31.08.11 - </span>...</p>
</div> <!-- END OF New -->
<div class="event">
<p><span class="red">28.08.2011 - </span>...</p>
</div> <!-- END OF New -->
<div class="event">
<p><span class="red">20.08.2011 - </span>...</p>
</div> <!-- END OF New -->
</div>
jQuery的:
$('.event span.red').hide().prependTo('.event p').show();
答案 0 :(得分:2)
您只需要定位当前的span
,并将其仅添加到相对p
。
var p = $('.event p');
$('.event span.red').hide().each(function(i) {
$(this).prependTo( p[ i ] ).show();
});
答案 1 :(得分:0)
试试这个
$('.event span.red').hide().each(function(i) {
$(this).prependTo($('.event p').eq(i)).show();
});
答案 2 :(得分:0)
$('.event span.red').each(function() {
var paragraph = $(this).closest('.event').find('p');
$(this).hide().prependTo(paragraph).show();
});