我有点卡在这里。无法弄清楚原因。任何帮助都将得到帮助。
原始元素
的 HTML 的
<div class="row slide active"></div>
应用JavaScript
的的JavaScript 的
//storing element into variable
var active_slide = jQuery('.slide.active.row');
//removing a class
active_slide.removeClass('active');
//adding a new class
active_slide.addClass('hidden');
的结果 的
<div class="row slide"></div>
预期结果
<div class="row slide hidden"></div>
答案 0 :(得分:0)
var active_slide = jQuery('.slide active row');
active_slide.removeClass();
active_slide.addClass('row slide hidden');
答案 1 :(得分:0)
为什么不删除整个类,并添加所需的类。这样,
$('button').click(function () { // or any other element; even onload
$('div').attr('class', ''); // remove the class; empty the attribute
$('div').attr('class', 'row slide hidden'); // add class
})
您可以使用attr()
处理元素的每个属性,然后添加或更新或删除元素的内容。它对我来说有点方便。
http://jsfiddle.net/afzaal_ahmad_zeeshan/ea8Fm/(在此测试)
我们的朋友charlietfl不喜欢这个解决方案,所以这里是Remove和AddClass解决方案
$('button').click(function () {
$('div').removeClass(); // remove class
$('div').addClass('row slide hidden'); // add class
})
您需要添加整个类,以便应用整个类,您可能需要删除以前的类;整体更新课程。
http://jsfiddle.net/afzaal_ahmad_zeeshan/HnwJd/(在这里测试一下)
就您的代码而言,结果与您希望的完全相同!
http://jsfiddle.net/afzaal_ahmad_zeeshan/25g2S/2/
我使用了相同的代码,结果就是你想要的代码。
答案 2 :(得分:0)
您可以通过javascript解决此问题,我认为jquery存在一些错误。
var active_slide = jQuery('.slide.active.row');
//removing a class
active_slide.removeClass('active');
//adding a new class
active_slide[0].className+=' hidden';