Я сделал демо which is here. Все, что вам нужно сделать, это начать вводить текст в текстовое поле, убедитесь, что консоль открыта. Так как вы печатаете, вы сразу увидите OMG Saved, и счетчик в консоли будет гаснуть.clearInterval не работает, как я этого ожидал
Теперь нажмите кнопку, наблюдая за консолью, вы увидите что-то вроде 11
или какое-то другое значение, но вы также увидите сброс счетчика и продолжается. Я не хочу это. Я хочу, чтобы счетчик остановился, я нажал кнопку, и пока страница не обновилась, счетчик должен остановиться, если я пойму these docs on setInterval()
.
приложение, которое я разрабатываю, которое использует код, очень похожий на это, не обновляется, поскольку большинство приложений с одной страницей не работают. Поэтому крайне важно, чтобы у меня был контроль над этим setInterval
.
Так что мой вопрос:
Как сбросить счетчик так, что, пока я снова не набрать в поле ввода или, если элемент поле ввода не может быть найден флэш-сообщение не появляется, интервал устанавливается на 0.
обновлениениже приведен код JavaScript, который выполняется по ссылке, приведенной выше.
var ObjectClass = {
initialize: function() {
$('#flash-message').hide();
},
syncSave: function() {
$('#content').keypress(function(){
SomeOtherClass.autoSave = setInterval(function(){
$('#flash-message').show();
$('#flash-message').delay(1000).fadeOut('slow');
}, 500);
});
},
listenForClick: function() {
$('#click-me').click(function() {
console.log(SomeOtherClass.autoSave);
clearInterval(SomeOtherClass.autoSave);
});
}
};
var SomeOtherClass = {
autoSave: null
};
ObjectClass.initialize();
ObjectClass.syncSave();
ObjectClass.listenForClick();
'TypeError:. $ (...) задержка (...) Затухание не является функцией. ' – jgillich
Пожалуйста, укажите код, который не работает в самом вопросе –
@jgillich Это исправлено. нажмите ссылку еще раз. – user3379926