注册jQuery点击,第一次和第二次点击

21 javascript jquery click

有没有办法运行两个类似于此的函数:

$('.myClass').click(
    function() {
        // First click
    },
    function() {
        // Second click
    }
);
Run Code Online (Sandbox Code Playgroud)

我想使用基本的切换事件,但.toggle()已被弃用.

hen*_*ser 51

试试这个:

$('.myClass').click(function() {
  var clicks = $(this).data('clicks');
  if (clicks) {
     // odd clicks
  } else {
     // even clicks
  }
  $(this).data("clicks", !clicks);
});
Run Code Online (Sandbox Code Playgroud)

这是基于一个已经回答的问题:支持eventData的jQuery的.toggle()方法的替代方案?

  • 我改变的一件事是我已经完成 if (!clicks)... 这那么(在第一次点击时提示“奇数”,其中 1,第一次点击是奇数而不是偶数。这更类似于toggle() 以及“if”语句用作第一次单击而不是“else”。 (3认同)

小智 8

或这个 :

var clicks = 0;

$('.myClass').click(function() {
    if (clicks == 0){
        // first click
    } else{
        // second click
    }
    ++clicks;
});
Run Code Online (Sandbox Code Playgroud)


小智 5

我为我的菜单工作了

var SubMenuH = $('.subBoxHederMenu').height();  
var clicks = 0;

        $('.btn-menu').click(function(){
          if(clicks == 0){
            $('.headerMenu').animate({height:SubMenuH});
            clicks++;
            console.log("abierto");
          }else{
            $('.headerMenu').animate({height:"55px"});
            clicks--;
            console.log("cerrado");
          }
          console.log(clicks);
        });
Run Code Online (Sandbox Code Playgroud)