Каждый раз, когда вы нажимаете кнопку сброса , создается новый интервал. Вот почему, когда вы нажмете кнопку Reset еще раз, ваш вывод на консоль станет беспорядочным.
Функция setInterval возвращает идентификатор созданного интервала, вы можете сохранить его в глобальной переменной, например window.timerInterval .
Внутри функции таймера сначала запустите clearInterval (window.timerInterval) . Поэтому, если есть какие-либо интервалы, созданные и сохраненные в window.timerInterval , clearInterval (window.timerInterval) обязательно прекратит его запуск.
Проверьте и запустите приведенный ниже рабочий пример:
function timer() {
var t = 3;
console.log("timer started t = " + t);
clearInterval(window.timerInterval);
window.timerInterval = setInterval(function() {
if (t >= 0) {
document.getElementById("timer").innerHTML = t;
console.log(t);
t--;
} else {
document.getElementById("timer").innerHTML = "Time Up!";
}
}, 1000);
console.log("timer stopped t = " + t);
}
<html>
<head>
<script src=timer.js></script>
</head>
<body>
<input type=Reset onclick=timer()> <br>
<hi id="timer"></hi> <br>
</body>
</html>
Попробовать Page.Master
.
Whatever whatev = (Whatever)Page.Master;
Необходимо будет удостовериться, что Вы добавляете надлежащее using
операторы к вершине Вашего файла, или квалифицируют встроенный тип страницы Master.
Один потенциальный глюк - то, если это управление используется другой страницей, основная страница которой НЕ является тем же типом. За это только ухватиться время выполнения.
Лучший способ сделать это, что я нашел, на самом деле является на самом деле для создания пользовательского класса, который основан на USERCONTROL, придайте ему главную недвижимость с помощью Accessiver, который рыбы через this.page.parent до тех пор, пока он не перестает встречаться Главные страницы (если вы вложены, этот шаг не нужен в противном случае), а затем верните этот веб-контроль как тип главной страницы, которую вы хотите использовать. Затем, когда вы добавляете новый пользовательский контроль, измените его базовый класс на имя вашего пользовательского класса. Свойство .master будет доступным и правильно размещаться как главная страница, которую вы хотите использовать.