无法添加.hidden类

时间:2013-12-09 14:21:55

标签: javascript jquery

我有点卡在这里。无法弄清楚原因。任何帮助都将得到帮助。

原始元素

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>

3 个答案:

答案 0 :(得分:0)

var active_slide = jQuery('.slide active row'); 
                   active_slide.removeClass();
                   active_slide.addClass('row slide hidden');

答案 1 :(得分:0)

选项1

为什么不删除整个类,并添加所需的类。这样,

$('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/(在此测试)

选项2:

我们的朋友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';