jQuery 只有“这个”。简单的问题

发布于 2024-11-29 23:07:18 字数 1384 浏览 1 评论 0原文

我只是陷入了一个简单的 jQuery 问题。 我正在尝试将每个 span 元素添加到 p 元素之前,但是 jQuery 将每个跨度重复 3 次(因为我有 3 个跨度元素)。好吧,这很难解释。

看看 Fiddle 代码 - http://jsfiddle.net/fTjcy/1/< /strong>

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();

I am just stuck in one simple jQuery question.
I am trying to each span element prependTo p element, but jQuery is repeating each span 3 times (because I have 3 span elements). Ok it is hard to explain.

Just look at Fiddle code - 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>

I wanna achieve :

<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();

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

成熟稳重的好男人 2024-12-06 23:07:19

试试这个

$('.event span.red').hide().each(function(i) {
    $(this).prependTo($('.event p').eq(i)).show();
});

Try this

$('.event span.red').hide().each(function(i) {
    $(this).prependTo($('.event p').eq(i)).show();
});
同尘 2024-12-06 23:07:19
$('.event span.red').each(function() {
    var paragraph = $(this).closest('.event').find('p');
    $(this).hide().prependTo(paragraph).show();
});
$('.event span.red').each(function() {
    var paragraph = $(this).closest('.event').find('p');
    $(this).hide().prependTo(paragraph).show();
});
逆夏时光 2024-12-06 23:07:18

您只需定位当前的 span,并将其添加到相对的 p 前面。

var p = $('.event p');

$('.event span.red').hide().each(function(i) {
    $(this).prependTo( p[ i ] ).show();
});

示例: http://jsfiddle.net/fTjcy/3/

You need to target the current span only, and prepend it to the relative p only.

var p = $('.event p');

$('.event span.red').hide().each(function(i) {
    $(this).prependTo( p[ i ] ).show();
});

Example: http://jsfiddle.net/fTjcy/3/

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文