KWCAG 2.2 · 6.2.1

응답시간 조절

자동 로그아웃·시간 제한 입력·자동 페이지 전환이 있을 때 사용자가 시간을 늘리거나 끌 수 있게 하는 방법. 끝나기 전에 알리고 연장하는 코드와 주의점을 정리했습니다.

마지막 수정

무엇을 요구하나요?

시간 제한이 있는 콘텐츠는 사용자가 응답 시간을 조절할 수 있어야 합니다. 화면 낭독기 사용자, 운동 장애가 있는 사용자, 인지 장애가 있는 사용자는 읽고 입력하는 데 시간이 더 걸립니다.

일반적으로 다음 중 하나를 제공합니다.

  • 시간 제한을 끌 수 있다
  • 시간 제한을 충분히 늘릴 수 있다
  • 끝나기 전에 알리고, 간단한 조작으로 연장할 수 있다

지침은 이 조절 기능을 충분한 시간(최소 20초 이상)을 두고 미리 알리도록 합니다.

자주 틀리는 예

1. 예고 없는 자동 로그아웃

작성하던 글이 사라지고 로그인 화면으로 바뀌는 경우가 가장 흔합니다.

setTimeout(() => location.href = '/logout', 20 * 60 * 1000);
const LIMIT = 20 * 60 * 1000, WARN = 2 * 60 * 1000;
let warnTimer, logoutTimer;
function startSessionTimer() {
  clearTimeout(warnTimer); clearTimeout(logoutTimer);
  warnTimer = setTimeout(() => sessionDialog.showModal(), LIMIT - WARN); // "2분 뒤 로그아웃됩니다. [연장하기]"
  logoutTimer = setTimeout(() => location.href = '/logout', LIMIT);
}
extendButton.addEventListener('click', () => { keepAlive(); sessionDialog.close(); startSessionTimer(); });

알림창은 화면 낭독기가 바로 읽도록 <dialog>로 열고 초점을 [연장하기] 버튼으로 옮기세요.

2. 자동으로 넘어가는 페이지

<meta http-equiv="refresh" content="5;url=/main">
<p>신청이 완료되었습니다.</p>
<a href="/main">메인으로 이동</a>

확인하는 방법

  1. 로그인 유지 시간, 결제·예약·시험 화면의 제한 시간, 자동 이동 화면을 목록으로 만들어 하나씩 확인하세요.
  2. 끝나기 전에 알림이 나오는지, 알림을 화면 낭독기가 읽는지, 키보드로 연장할 수 있는지 확인하세요.
  3. 확장 프로그램 페이지 검사는 meta refresh 자동 이동을 찾아줍니다. 스크립트로 만든 시간 제한은 직접 확인해야 합니다.

직접 점검해 보기

자주 묻는 질문

보안 때문에 자동 로그아웃은 꼭 필요해요.

자동 로그아웃 자체가 금지는 아닙니다. 끝나기 최소 20초 전에 알리고, 시간제한을 해제하거나 연장할 수 있게 하면 됩니다. 온라인 경매·실시간 게임처럼 반응시간 조절이 원천적으로 허용되지 않는 경우와 세션 시간이 20시간 이상인 경우는 예외지만, 이때도 시간제한이 있다는 것과 끝났다는 것은 알려야 합니다.

이 글은 셀프 점검을 돕는 안내이며 공식 해설이나 인증 심사 기준을 대신하지 않습니다. 정확한 기준은 한국형 웹 콘텐츠 접근성 지침 2.2 원문을 확인하세요.