使用jquery修改HTML元素

时间:2013-07-19 13:15:48

标签: javascript jquery html css

我正在尝试使用jquery根据变量的值(<li>)从i元素中添加和删除一个类。

这是我到目前为止所做的事情http://jsfiddle.net/LX8yM/

点击“+”会将i增加1(我已经使用chrome的javascript控制台检查了这一点)。

应该可以点击“+”,然后应该从.active元素中移除并添加类<li>

...我可以获得第一个接受该类的<li>元素,这就是全部......

5 个答案:

答案 0 :(得分:6)

不需要if语句:

$(document).ready(function (){   
  $('#add').click(function (){
    $('.numbers .active').removeClass('active').next().addClass('active');
  });
});

jsfiddle

请注意我在第一个列表项中添加了“活动”类。如果您无法控制标记,则可以通过JS始终执行此操作。

答案 1 :(得分:3)

你的if..else ..挂在document.ready。在函数内部包含增量并分别调用它。

喜欢

$(document).ready(function (){      
    //variable
    var i = 1;

    //if statments
    function incre(i){ // wrap into a function and process it
    if(i == 1){
        $('#one').addClass('active');
        $('#two').removeClass('active');
        $('#three').removeClass('active');
    }else if(i == 2){
        $('#one').removeClass('active');
        $('#two').addClass('active');
        $('#three').removeClass('active');
    }else if(i == 3){
        $('#one').removeClass('active');
        $('#two').removeClass('active');
        $('#three').addClass('active');
    }
    }

    //change i
    $('#add').click(function (){
        incre(i++);  // pass it as a parameter
    });

});

Working JSFiddle

答案 2 :(得分:2)

这会更容易:

$(document).ready(function(){
    var i = 0; // set the first value
    $('#something').click(function(){
    i++; // every click this gets one higher.

    // First remove class, wherever it is:
    $('.classname').removeClass('classname');
        // Now add where you need it
        if( i==1){
        $('#one').addClass('classname');
        } else if( i==2){
        $('#two').addClass('classname');
        } else if( i==3){
        $('#three').addClass('classname');
        }
    }):
});

答案 3 :(得分:0)

请参阅此代码。最初,您必须将课程添加到一个

$(document).ready(function (){

    //variable
    var i = 1;
    $('#one').addClass('active');

    //if statments


    //change i
    $('#add').click(function (){
        i++;
        if(i == 1){
        $('#one').addClass('active');
        $('#two').removeClass('active');
        $('#three').removeClass('active');
    }else if(i == 2){
        $('#one').removeClass('active');
        $('#two').addClass('active');
        $('#three').removeClass('active');
    }else if(i == 3){
        $('#one').removeClass('active');
        $('#two').removeClass('active');
        $('#three').addClass('active');
    }
    });

});

答案 4 :(得分:-1)

它只被调用一次,而不是单击事件功能。您对小提琴的编辑工作:http://jsfiddle.net/LX8yM/2/

把它放在

'$('#add').click(function (){}'