Извиняюсь за смутное название, это сложно объяснить в строке ...
В любом случае, допустим, у меня есть кнопка с действием, определенным свойством data-action
. Когда пользователь нажимает указанную кнопку, происходит что-то , и действие кнопки изменяется на ее второе состояние.
Однако, реализуя это, я обнаружил, что событие, определенное для этого второго состояния, запускается автоматически после срабатывания первого состояния, как если бы «щелчок» сохранялся после вызова функции и запускал второе событие. *
Вот jsFiddle
Один щелчок должен показать журнал «переход к« foo »», а второй щелчок должен показать журнал «переход к« bar »», но если вы попробуете это, вы увидите, что оба события запущены.
Как я могу это остановить?
Редактировать : Спасибо Димитру за помощь -
var action = ((this.retrieve('action', 'foo') != this.getProperty('data-action')) ? 'bar' : 'foo' );
if (action == 'foo') {
console.log('executing "foo"');
this.store('action', 'bar');
}
else {
console.log('executing "bar"');
this.store('action', 'foo');
}