Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.06.2013, 17:50
Новичок на форуме
Отправить личное сообщение для k911a Посмотреть профиль Найти все сообщения от k911a
 
Регистрация: 09.06.2013
Сообщений: 1

Разные действия при 1-м и 2-м клике
JQuery
Третий день ломаю мозг, как сделать, чтобы при первом клике на объекте происходило одно действие, а при втором другое.

Метод toggle не подходит, т.к. он не работает в поздних версиях jQuery таким образом, а просто скрывает и показывает объект.
Ответить с цитированием
  #2 (permalink)  
Старый 09.06.2013, 18:09
Аватар для vadim5june
Студент
Отправить личное сообщение для vadim5june Посмотреть профиль Найти все сообщения от vadim5june
 
Регистрация: 30.04.2012
Сообщений: 1,113

Вот так без jquery
<button onclick=f(this)>click me</button>
<script>
function f(t){if(t.i){t.i=0;f1()}else{t.i=1;f2()}};
function f1(){alert('one')};
function f2(){alert('two')};
</script>

Последний раз редактировалось vadim5june, 09.06.2013 в 18:16.
Ответить с цитированием
  #3 (permalink)  
Старый 09.06.2013, 18:38
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

<button id="button">Жми!</button>
<script>
    var button = document.getElementById('button');
    var actions = {
        1: function() {
           alert('Действие 1');
        },
        2: function() {
           alert('Действие 2');
        }
    };
    var counter = 0;
    button.onclick = function() {
        actions[counter = (counter % 2) + 1]();
    }
</script>
Ответить с цитированием
  #4 (permalink)  
Старый 09.06.2013, 20:10
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,070


<!DOCTYPE HTML>
<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>
<body>
<button id="button">Жми!</button>
<script>
    var a = {
    0: function () {
        alert('Действие 1')
    },
    1: function () {
        alert('Действие 2')
    }
}, b = -1;
document.getElementById("button").onclick = function () {
    a[++b % 2]()
};
</script>
</body>
</html>

Последний раз редактировалось рони, 09.06.2013 в 20:12.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
копирование в Буфер при клике на картинку Павел Общие вопросы Javascript 7 14.07.2013 00:51
Выполнить 2 разных действия при одном запросе. Gesandte AJAX и COMET 12 18.12.2011 16:53
Подсветка области при клике Happening Общие вопросы Javascript 0 30.04.2011 15:01
menu с выпадающими подменю при наведении и раздвижное при клике bugor Элементы интерфейса 3 04.10.2010 14:32
При первом клике список не раскрывается. lancer Элементы интерфейса 1 30.03.2008 17:24