jQuery .toggle event deprecated, What to use?

10.5k Views Asked by At

Since the jQuery .toggle event method is deprecated. What are we suppose to use to simulate this event (alternate clicks)?

2

There are 2 best solutions below

4
Jay Lane On BEST ANSWER

Add this outside of document.ready

$.fn.clicktoggle = function(a, b) {
    return this.each(function() {
        var clicked = false;
        $(this).click(function() {
            if (clicked) {
                clicked = false;
                return b.apply(this, arguments);
            }
            clicked = true;
            return a.apply(this, arguments);
        });
    });
};

then use the following to replicate the .toggle functionality:

$("#mydiv").clicktoggle(functionA,functionB);

Found on the JQuery Forums

0
Pomme Zede On
var i = 0;    
$('button').click(function() { 
    if (i == 0){        
        $('div').css({background: 'red'}) 
        i++; 
    } else { 
        $('div').css({background: 'yellow'}) 
        i = 0; 
    }
});