Я хочу создать таймер, который запускается автоматически, как только веб-страница загружается, и отслеживает время, которое я провожу на странице, прежде чем я нажму «отправить» на этой веб-странице. Возможно ли это с помощью сценария tamper monkey?
Я хочу отслеживать время, потраченное на заполнение ссылок формы.
Привет, @Hyderabadi, и добро пожаловать в Stack Overflow. Возможно, вам придется немного изменить свой вопрос, прежде чем вы сможете ожидать, что пользователи этого сайта попытаются ответить. Я рекомендую вам ознакомиться с инструкциями по заданию вопросов: stackoverflow.com/help/asking. Не бойтесь просить совета в комментариях.
Да, это возможно с помощью пользовательского скрипта, просто найдите код, который вам больше всего подходит, и добавьте его в скрипт Tampermonkey.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Взгляните на этот код https://codepen.io/shivani137/pen/aYjaKG
setInterval(function() {}, 1000) может помочь вам в достижении этой функции
Спасибо за такой быстрый ответ и руководство.
Но у меня есть вопрос, как мне использовать приведенный выше код в tamper monkey для автоматического запуска при загрузке веб-страницы и можем ли мы вместо этого отображать цифровой таймер. Спасибо.
Установите таймер при загрузке страницы. Затем, когда нажата кнопка отправки, просто остановите таймер.
<script>
window.onload = function() {
var incrementSecond = function () {
window.secondsPassed += 1;
console.info('+1 sec, now we have', window.secondsPassed);
}
window.secondsPassed = 0;
window.myTimer = setInterval(incrementSecond, 1000);
}
var onSubmitClick = function() {
window.clearInterval(window.myTimer); // always clean resources
// call some other function to do the submit
}
</script>
<input type = "submit" onClick = "onSubmitClick"/>Вы можете просто установить новую переменную даты при загрузке страницы и установить другую, когда пользователь нажимает кнопку «Отправить» и обнаруживает разницу.
<script>
var start;
window.onload = function(){
start = new Date();
}
function myFunction() {
var end = new Date();
var diff = Math.abs(end - start);
alert(diff);
}
</script>
<button onclick = "myFunction()">Submit</button>
Спасибо за помощь, Коди. Он показывает мне предупреждение с четырехзначным числом. Могу ли я узнать, как я могу узнать время в секундах или минутах.
@Hyderabadi проверь мой пост. это может быть полезно. Но если вы хотите использовать дату в качестве источника, вы можете использовать формат для этого класса, проверьте этот пост stackoverflow.com/questions/14638018/…
@Hyderabadi, это прошедшее время в миллисекундах. Чтобы получить секунды, разделите результат на 1000.
Возможный дубликат Как установить таймер на загрузку тела?