有没有办法用计数器将不同的东西附加到div中?

时间:2015-09-28 09:57:06

标签: javascript jquery

var play = function(){
var counter = 0;
if(counter == 0){
  $( this ).click(function(e) {
   var targetBox = (e.target.id);
   $("#" + targetBox).append("something");
   counter++;
 })
} else if (counter == 1){
  $( this ).click(function(e) {
   var targetBox = (e.target.id);
   $("#" + targetBox).append("O");
   counter--;
  });
 }
}

我正在尝试制作一个按钮,用计数器更改附加到我的targetBox的内容。如果计数器为1,则附加某些内容,如果计数器为0,则附加其他内容。任何帮助将不胜感激

3 个答案:

答案 0 :(得分:3)

移动条件,即 if block 在点击处理程序中。

var play = function() {

    var counter = 0;

    //Use proper selector here
    $(this).click(function(e) {
        var targetBox = (e.target.id);
        if (counter == 0) {
            counter++;
            $("#" + targetBox).append("something");

        } else if (counter == 1) {
            counter--;
            $("#" + targetBox).append(O);
        }
    });
}

答案 1 :(得分:1)

 $( this ).click(function(e) {
   var targetBox = (e.target.id);
   if(counter == 0) {
     $("#" + targetBox).append("something");
     counter++;
   } else if(counter == 1){
     $("#" + targetBox).append("O");
     counter--;
   }
 })

答案 2 :(得分:1)

将条件放在事件处理程序中:

$(this).on('click', function(e) {
    e.preventDefault();
    var targetBox = e.target.id;
    if( counter == 0 ) {
        $("#" + targetBox).append( "something" );
        counter++;
    }
    else {
        $("#" + targetBox).append( "O" );
        counter--;
    }
});