如何选择一个特定的类 - jQuery

时间:2013-02-27 17:42:49

标签: jquery

是否有人知道如何选择元素的特定类。我有一个用html创建的元素。该元素有两个类“n”和“s1”,例如:

{<td class="n" class="s1" id=""><img src="gfx/football.png" /></td>}

然后在jquery中我创建另一个元素(它只是一个div)。我要做的是:当点击上面的元素(td)时,我想将同一个类(类s1)添加到我的新<div>。我只需要这两个元素具有相同的类。

我正在使用的代码如下:

myDIVishere.addClass($(this).attr('class')

这一行为我的新div添加了一个类,但正如你在上面我看到的那样(这个) - &gt; <td>有两个类。如何告诉程序我要添加第二个类(class =“s1”)而不是第一个类。我差点忘了。我有50个<td>元素,所以我不能使用类名。

2 个答案:

答案 0 :(得分:1)

首先,您必须修复标记。

我在Opera和Chrome中测试过,class="foo" class="bar"无效。

应为class="foo bar"

考虑到这一点,您可以使用以下内容获得第二节课:

var el = $('<a />', { class: 'foo bar' });
var classes = el.attr('class').split(' ');
var secondClass = classes[1];

在添加到另一个元素之前,请务必检查secondClass是否为undefined,因为这可能会导致意外结果。

答案 1 :(得分:0)

当您使用该属性信息来识别元素时,您确实应该使用ID,这是唯一的。

如果你不能/不会将它存储在ID属性中,而是将s1存储在一个类中,给它一个单独的可识别属性......所以你可以这样抓住它:

var specialValue = $('.myElement').attr('special-attribute');
$('.someOtherElement').addClass( specialValue );

但在那里,使用addClass也会浪费精力。你可以在这一点上继续使用属性。