9

而不是使用$('.element').toggle(function(){}, function(){});

我需要在要使用.on()的元素上使用该方法,.toggle()但我不知道如何指定我的第二个事件处理函数:

$('body').on('toggle', '.element', function(){});

我必须在哪里为我的切换事件指定第二个处理函数?

我在这里做了这个:http: //jsfiddle.net/D33f4/但是第一次点击没有任何反应。我真的不明白为什么。

4

2 回答 2

6

尝试仅使用切换。

$('#clickme').toggle(
    function(){alert('click 1');},
     function(){alert('click 2');}
);

事实上,它在第一次点击时不会做任何事情,因为它只是在那个时候附加事件处理程序。

编辑:

我没有完全阅读帖子。我的错。

$('body').on('click', '#clickme', function()
{
    var state = $(this).data('state');


    switch(state){
        case 1 :
        case undefined : alert('click 1'); $(this).data('state', 2); break;
        case 2 : alert('click 2'); $(this).data('state', 1); break;
    }
});
于 2012-07-20T12:27:51.383 回答
0

这对我有用。

  $("#chkShowDevices").click(function() {
    console.log($("#chkShowDevices").prop("checked"));
  });
于 2020-08-05T18:40:20.243 回答