2016-09-22 1 views
1

도와주세요. 나는 사용자가 mousemove, keypress 등과 같은 페이지에서 활동을 한 총 시간을 찾아야한다. 나는 그 페이지가 사용 된 유용한 시간을 얻고 싶다. 페이지가 열린 총 시간과 사용자가 해당 페이지에 집중 한 시간을 계산하는 코드를 만들었습니다.jquery의 mousemove와 같은 페이지에서 사용자가 수행 한 총 시간을 계산하시오

이 유용한 시간을 계산하는 다른 방법은 아무 것도 (mousemove, keypress를 의미 함) 완료된 페이지의 총 유휴 시간을 계산하는 것입니다. 유용한 시간 = 총 페이지 열기 시간 - 총 유휴 시간

도와주세요 다음은 코드입니다.

var start, end, openingtime, pagefocustime = 0; 
 
    $(document).ready(function(){  
 
     start = performance.now(); 
 

 
     $(window).on('blur', function() { 
 
     end = performance.now(); 
 
     pagefocustime += end - start 
 
     }) 
 

 
     $(window).on('focus', function() { 
 
     start = performance.now(); 
 
     }) 
 
     
 
     $(window).on('beforeunload',function(){   
 
       end = performance.now(); 
 
       pagefocustime += end - start 
 
       console.log("Exact Page Focused Time : "); 
 
       console.log(pagefocustime);      
 
       openingtime = end-start; 
 
       console.log("Total Page Read Time : "+ openingtime); 
 
     });   
 
});

이 도와주세요. 미리 감사드립니다.

답변

0

여기가 답입니다. 위의 코드와 함께이 코드를 사용하십시오.

function setup() { 
 
\t \t this.addEventListener("mousemove", resetTimer, false); 
 
\t \t this.addEventListener("mousedown", resetTimer, false); 
 
\t \t this.addEventListener("keypress", resetTimer, false); 
 
\t \t this.addEventListener("DOMMouseScroll", resetTimer, false); 
 
\t \t this.addEventListener("mousewheel", resetTimer, false); 
 
\t \t this.addEventListener("touchmove", resetTimer, false); 
 
\t \t this.addEventListener("MSPointerMove", resetTimer, false); 
 
\t \t startTimer(); 
 
\t } 
 
\t 
 
\t setup(); 
 
\t 
 
\t function startTimer() { 
 
\t \t timeoutID = window.setTimeout(goInactive, 10000); 
 
\t } 
 
\t 
 
\t function resetTimer(e) { 
 
\t \t window.clearTimeout(timeoutID); 
 
\t 
 
\t \t goActive(); 
 
\t } 
 
\t 
 
\t function goInactive() { 
 
\t \t idletime = idletime + inactivetime; 
 
\t } 
 
\t 
 
\t function goActive() {  
 
\t \t startTimer(); 
 
\t }

관련 문제