Ответ 1
$('element').hasClass("test", function() {
$('element2').addClass("test");
} );
должен сделать это - синтаксически непроверенный, но это примерно то, что я сделал бы.
Скажем, например, у меня есть тело с классом "test", и я хочу взять этот класс и добавить его в другой div, как я могу это сделать с помощью jQuery?
Спасибо
Изменить: Что-то вроде этого?
$("body.test").clone().attr("class").prependTo("div");
$('element').hasClass("test", function() {
$('element2').addClass("test");
} );
должен сделать это - синтаксически непроверенный, но это примерно то, что я сделал бы.
Я наткнулся на ваш вопрос, ища решение одной и той же проблемы. Хотя предлагаемое решение работает, вы должны знать имя класса.
вот еще один способ сделать это, не зная имена классов. Как вы думали, он использует .attr()
$("#MyTargetElementId").attr("class", $("body.ToCopy").attr("class"));
Использование нескольких селекторов действительно не работает, но какой смысл имеет смысл:)
Вы должны использовать это, если хотите просто добавить классы из другого элемента без удаления существующих классов:
$('.i_want_your_classes').addClass( $('.have_my_classes').attr("class") );
Ниже приведенная ссылка может помочь вам скопировать атрибуты класса или идентификатора из одного элемента в другой. Он также содержит живые примеры, как это сделать.
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'
Идентификатор копирования из элеменети в другой
$('.someClass').attr( 'id', $('#someId').attr('id') );