javascript – 使用each()进行jQuery DOM操作;

前端之家收集整理的这篇文章主要介绍了javascript – 使用each()进行jQuery DOM操作;前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在尝试使用每个()使用jQuery同时对几个元素进行一些简单的DOM操作.我得到的结果我不明白.

这是一个jsFiddle,显示我想要发生的事情VS实际发生的事情:

http://jsfiddle.net/kthornbloom/4T52A/2/

这是JS:

// Step One: Append one blue Box within each grey Box

$('.grey').append('<div class="blue"></div>');

// Step Two: Make one copy of the red Box already there,and place it within the new blue Box.

$('.grey').each(function () {
    $('.red',this).clone().appendTo('.blue',this);
});

为什么我会得到我的结果,我怎样才能获得理想的结果呢?

解决方法

这是因为上下文选择器在.append()中不起作用.最快的解决方案(非最佳)是重新创建一个新的jQuery对象:
$('.red',this).clone().appendTo($('.blue',this));

小提琴:http://jsfiddle.net/4T52A/3/

这是一个最佳解决方

$('.grey').each(function () {
    var $this = $(this);
    $this.find('.red').clone().appendTo($this.find('.blue'));
});
原文链接:https://www.f2er.com/jquery/157234.html

猜你在找的jQuery相关文章