#javascript #setinterval
#javascript #setinterval
Вопрос:
Итак, я в основном получил переменную, для которой установлено значение true, и чего я хочу добиться, так это чтобы переменная через 2 секунды превращалась в false. Как я могу это сделать с помощью setInterval ?
Комментарии:
1. У вас есть какой-либо код, который вы написали до сих пор?
Ответ №1:
Попробуйте использовать setTimeout
вместо этого. Он выполнит анонимную функцию один раз.
var yourVar = true;
setTimeout(function(){ yourVar = false; }, 2000);
Ответ №2:
Если вы пытаетесь вызвать какое-либо событие или вызвать некоторые функции через 2 секунды, то:
setTimeout(function() {
function1();
function2();
}, 2000);
// this will call functions after 2 seconds, when setTimeout will get called
И, если вы хотите вызвать некоторые функции после некоторого определенного события (условия), используя setInterval
then, вы должны использовать clearInterval
для разрыва цикла:
var setint = setInterval(function(){
if (check condition here) {
function1();
function2(); // .... so on
clearInterval(setint); // break the setInterval loop
}
}, 100);
Комментарии:
1. Пожалуйста, не используйте функцию «выполняемые фрагменты», если ваши фрагменты недоступны для выполнения. Проверьте правильность написания, прежде чем нажать «отправить».
2. Спасибо Lightness за ваши предложения и исправления
3. @Динеш Гопал Чанд Проблема в том, что я, возможно, неправильно использую его. Чего я пытаюсь добиться, так это того, что когда для параметра visible установлено значение false, видимость круга скрыта, а когда для него установлено значение true, оно становится видимым.
function redActive(){ var visible = true; setInterval(function (){ visible = false; console.log(visible); },1000); return visible; } switch(redActive()){ case visible = false: redCircle.style.visibility="hidden"; break; case visible = true: redCircle.style.visibility="visible"; break; }
4. @TudorApostol , я понял вашу проблему, и когда я просмотрел ваш код, я обнаружил ошибку зеркального отображения. Попробуйте использовать setInterval в случае переключения, т.е. Поместите свой условный блок в цикл, нет необходимости использовать setInterval в функции редактирования. вот простая демонстрация. jsfiddle.net/googleCode/k4r3kj8j Я верю, что это поможет вам.