15

例如,我有一个带有“test”类的主体,我想将该类添加到另一个 div 中,我该如何使用 jQuery 来做到这一点?

谢谢

编辑:像这样的东西?

 $("body.test").clone().attr("class").prependTo("div");
4

4 回答 4

47

在寻找相同问题的解决方案时,我偶然发现了您的问题。尽管建议的解决方案有效,但您必须知道类名。

这是另一种在不知道类名的情况下执行此操作的方法。如您所想,它使用.attr()

 $("#MyTargetElementId").attr("class", $("body.ToCopy").attr("class"));

但是,使用多个选择器并没有真正起作用,这是有道理的:)

于 2010-12-10T14:54:57.503 回答
7

如果您只想从另一个元素添加类而不删除现有类,则应该使用它:

$('.i_want_your_classes').addClass( $('.have_my_classes').attr("class") );
于 2016-11-24T17:52:17.130 回答
0

下面的链接可能会帮助您将类或 id 属性从一个元素复制到另一个元素。它还包含如何执行此操作的实时示例。

http://html-tuts.com/copy-class-id-to-another-html-element-with-jquery/


以下是一些简短的示例:

将所有类从一个元素复制到另一个

$('.differentClass').addClass( $('.anotherClass').attr('class') );

如果元素有多个类,则将它们放入数组并仅复制第二个类(或任何其他类):

var getClasses = $('.someClass').attr('class');
var splitClasses = getClasses.split(' ');

$('.differentClass').addClass( splitClasses[1] );

这将产生下面的数组,您可以通过提供数组位置来输出值:

splitClasses[0] => 'firstClass'
splitClasses[1] => 'secondClass'
splitClasses[2] => 'thirdClass'

将 ID 从 Elemenet 复制到另一个

$('.someClass').attr( 'id', $('#someId').attr('id') );
于 2015-04-19T21:31:00.257 回答
-6
$('element').hasClass("test", function() {
 $('element2').addClass("test");
} );

应该这样做-在语法上未经测试,但这大致就是我要做的。

于 2009-07-20T19:25:11.063 回答