마우스 사용자의 사용성(Usability)과 키보드 사용자의 접근성(Accessibility)
포털사이트에 회원 가입을 하거나 상품 주문시 배송지 정보를 입력할 때 전화번호 및 주민등록번호를 입력하다 보면 자동으로(JavaScript 구현으로) 포커스가 다음 칸으로 이동하는 경우가 있습니다.

이렇게 시작하겠죠?

칸을 다 채우면 다음 칸으로 넘어갑니다. 여기까지는 좋습니다.


문제는, 이미 입력한 "1234"를 고치고 싶을 때 생깁니다. 하지만 불행인지 다행인지 대부분의 사용자들은 이를 느끼지 못합니다. 왜냐하면 마우스로 "1234"를 클릭한 후 얼마든지 지우고 새로 입력할 수 있거든요.

불편을 겪는 건 키보드를 사용하는 사용자들입니다. 키보드로 이전 칸으로 돌아가고 싶으면 [Shift + Tab]을 누르죠. 그러면 이렇게 돌아갔다가,
순시간에 자동으로 다시 다음 칸으로 돌아옵니다.
내용을 삭제할 시간조차 없기 때문에 완전 좌절이죠. OTL

만일 사용자가 시각이 불편해서 마우스 대신 키보드만 사용해야 한다면 페이지를 새로고침해서 처음부터 다시 시작하는 방법밖에 없겠죠. 정말 짜증나는 일입니다.

이게 바로 사용성(usability)과 접근성(accessibility)의 차이입니다. 이 경우에는 마우스 사용자의 사용성은 좋아졌지만 키보드 사용자들에겐 접근성이 떨어졌지요. 다양한 의견이 있지만, 저는 사용성은 상대적이고 접근성은 절대적일 뿐, 이 둘은 상충되지 않는다고 생각합니다. "모든" 사용자들의 사용성을 동시에 생각하는게 접근성이죠. 다행히 많은 경우에는 사용성이 좋아질 때 접근성도 좋아지지만, 안타깝게도 이처럼 마우스 사용자와 키보드 사용자간의 편의가 엇갈릴 때가 간혹 있습니다.

최대다수의 최대행복을 추구할 것이냐 최소고통에 관심을 기울일 것이냐

는 수 세기에 걸쳐 풀리지 않는 문제의 연장선이라고 생각합니다.



풀다운메뉴의 onChange 이벤트 핸들러도 접근성 문제가 있습니다. 요새는 그런 사이트가 잘 없는데, 예전에는 생년월일을 선택할 때 자동으로 넘어가는 경우가 많았습니다. 저처럼 생일이 29일인 사람은(이번 달 입니다!) End키를 누른 후 화살표를 두어 번 위로 눌러서 선택을 하는 습관이 있거든요. 어떤 일이 생기냐면, 화살표나 End키를 한 번만 눌러도 다음 칸으로 넘어가 버립니다. 저야 한번 투덜거리면 그만이지만, 시각이 불편해서 마우스를 사용할 수 없는 사용자들에겐 치명적입니다.조금만 더 관심을 기울이시면 비록 작은 비율이지만 꽤 많은 사람들의 생활이, 그리고 인생이 바뀝니다.


물론, 가장 좋은 건 사용성만큼 접근성도 높이는 겁니다. 실제로 Firefox는 풀다운 메뉴를 키보드로 수정하는 경우에 한해서, 포커스가 풀다운 메뉴를 떠날 때 onChange 이벤트를 발생시킵니다. 이건 JavaScript가 아닌 브라우저가 문제를 해결한 경우죠. 제가 웹 개발 경험이 없다 보니 JavaScript를 잘 몰라서 그러는데, 어쩌면 [Shift + Tab]으로 이전 칸으로 돌아간 경우에만 포커스를 다음 칸으로 이동시키지 않도록 구현이 가능한지도 모르겠습니다. 그렇게만 된다면 금상첨화겠죠.
by 준호 | 2007/07/07 11:26 | 접근성 (Accessibility) | 트랙백 | 덧글(4)
트랙백 주소 : http://jayr.egloos.com/tb/1320769
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by 윤좌진 at 2007/07/07 23:50
업무를 지시하는 PM이나 실제 개발을 하는 개발자들이 조금만 배려를 위해 고민할 시간을 가진뒤 개발에 임한다면..
하는 생각이 드네요 :)
그날 KWAG 10번째모임 열띤토론이 다시금 새록새록 생각나게 하네요 ㅎㅎ
진행하는 제가 토론을 끝내고 다음발제로 넘기려했지만 너무 열띤토론에 끼어들기 힘들정도였죠 :D
또 그런 자리가 마련됐으면 좋겠습니다 ^^
Commented by 정찬명 at 2007/07/10 13:16
좋은글 잘 읽었습니다. 저도 언젠가 이런 내용의 포스팅을 하고 싶었는데 제가 하고있던 생각과 흡사해서 많이 공감했습니다 . 가려운 부분이었다고나 할까요? 조금만 생각하면 모두가 편해질수 있는 이런 방법 많이 연구해서 공유해 주시면 좋겠습니다 ^^
Commented by coolluck at 2008/09/22 09:07
posting의 초점이 이건 아닌것 같지만
두번째 input box의 onkeyup 에서 tab을 skip 하도록 하면 일단 everyone happy...
Commented by 준호 at 2008/10/26 23:35
그게 바로 금상첨화죠!

:         :

:

비공개 덧글

< 이전페이지 다음페이지 >