Опрос в режиме реального времени

document.body.onclick = function(e) {
 e = e || event
var target = e.target || e.srcElement
// variable target has your clicked element
 innerId = target.id;
 // do your stuff here.
 isClicked = 1;


}

document.body.onmousemove = function()
{

hasMouseMoved = 1;
//console.log(hasMouseMoved);
}
window.onresize = function()
{
 isresized =1;
 //console.log(isresized);
}

window.onscroll = scroll;

function scroll()
{
 alert("scroll event detected! " + window.pageXOffset + " " + window.pageYOffset);
 isScrolled=1;
 //console.log(isScrolled);

}
document.body.onkeypress = function(evt)
{
 evt = evt || window.event;

 if (evt.keyCode!=='undefined') {
 // Do your stuff here
 isPressed = 1;
 // console.log(isPressed);
 }
return isPressed;
}

 function getResult() {
 result = ***hasMouseMoved+"|"+isClicked +"|"+isPressed+"|"+isresized+"|"+isScrolled+***"|";
 //console.log(result);
 return result;
 }
 // return result;
//}
var final = getResult();
 console.log(final);

Поэтому у меня есть эти 5 обработчиков событий, которые манипулируют/обрабатывают взаимодействие пользователя с клавиатурой и мышью. У меня есть функция getResult которая получает изменения в флагах, связанных с каждой из этих функций. Когда я запускаю этот Javascript с HTML-страницей, мне нужно постоянно вводить getResults(); в консоли, чтобы получить изменения в этих флагах после того, как я набрал/нажал /mousemoved/scrolled/resized. Я хочу, чтобы изменения отображались в реальном времени с изменением этих флагов с помощью взаимодействий.

Пожалуйста, помогите мне понять, как опросить этих обработчиков, чтобы дать результат в режиме реального времени. На данный момент флаги (isPressed/isScrolled/isResized/hasMouseMoved/isClick) назначаются 0 и остаются такими же в getResults функции getResults с конечной переменной. Пожалуйста помоги.

1 ответ

вызов getResult() в конце каждой функции обработчика:

console.log(getResult());

licensed under cc by-sa 3.0 with attribution.