2011-10-24 2 views
0

로깅 후 학생이 자신의 코스 페이지를 보는 데 소비하는 총 시간을 추적해야합니다.레일 3.1, 사용자 시간 추적 중입니까?

내가 이길 다음과 같은 문제를 가지고 학생이 과정을보고 시작할 때 DateTime.Now를 저장할 수 있지만 :

  1. 코스 웹 페이지를 떠나 다른 창 탭을 열 수있는 학생, 방법 학생이 코스 웹 페이지를 보지 않고 추적 시간을 일시 중지하고 복귀했을 때 추적을 재개 할 수 있습니까?

  2. 일정 시간 동안 유휴 상태 인 학생을 알아 차 리겠습니까? , 감사보다 더 될 것입니다

어떤 힌트 나 도움을 (아무것도하지 않고 심지어 브라우저를 최소화) 쉽게 작업을 할 수있는 특정 보석이나 jQuery 플러그인이있다? 또는 권장 방법은 무엇입니까?

+2

의 중복 가능성 [페이지에 소요되는 시간을 측정하는 방법은?] (http://stackoverflow.com/questions/4667068/how-to-measure-a-time-spent-on- a-page) –

답변

1

첫 번째 문제는 onFocus 및 onBlur 이벤트입니다.

두 번째를 들어
window.onblur = function() { 
    stopWatching(); 
}; 

window.onfocus = function() { 
    startWatching(); 
}; 

, 난 정말 당신을 도울 수는 없지만 : 당신이 MouseMove 이벤트이나 키 누르기와 같은 자바 스크립트 이벤트와 놀이 기운.

http://api.jquery.com/category/events/

+0

고마워, 나는 마우스 이동이나 클릭을 확인하기위한 jQuery를 발견했다. 아주 좋았는데, 여기에있다 : http://paulirish.com/demo/idle-timer 윈도우가 집중되어 있지 않아도 작동한다. , 난 세션을 닫거나 무언가를 할 수있는 레일을 말할 수있는 방법이 필요합니다 – simo

+0

멋진 플러그인 :) 공유 주셔서 감사합니다. Benoit Garret의 링크를보고 다음과 같이 언로드하기 전에 요청을 보낼 수 있습니다 : $ (window) .unload (function() { – iRyusa