@tereshock98

Как сделать переключатель на одну кнопку в JQuery?

Есть одна кнопка. Нужно, что по одному щелчку выполнялась одна функция, а по повторному - выполнялась другая функция. Как реализовать*?
  • Вопрос задан
  • 973 просмотра
Решения вопроса 1
y0u
@y0u
dev
Простой вариант
var i = 0;

$('button').click(function() {
    i++;

    if (i == 1) {
        // function 1
    } else {
        // function 2
        i = 0;
    }
});
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
AnnaVel
@AnnaVel
Создать переменную и при клике на кнопку проверять ее значение. В зависимости от значения переменной выполнять какое-то действие и изменять значение переменной.
Например https://jsfiddle.net/r2uwdL30/
Ответ написан
Комментировать
Vlad_IT
@Vlad_IT Куратор тега JavaScript
Front-end разработчик
Пишешь
(function($) {
    $.fn.clickToggle = function(func1, func2) {
        var funcs = [func1, func2];
        this.data('toggleclicked', 0);
        this.click(function() {
            var data = $(this).data();
            var tc = data.toggleclicked;
            $.proxy(funcs[tc], this)();
            data.toggleclicked = (tc + 1) % 2;
        });
        return this;
    };
}(jQuery));

потом используешь
$('#test').clickToggle(function() {   
    // Функция 1
},
function() {
    // Функция 2
});

От сюда своровал https://stackoverflow.com/questions/4911577/jquery...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы