홈으로 | 무료회원가입 | 아이디/비번찾기
추천음악방송
웹 접근성을 생각하는 자바스크립트
11년 전
요즘의 웹 사이트들은 점점 Ajax 의 사용추세가 늘어나고 있습니다.
하지만 사실 Ajax 에는 치명적인 단점이 있습니다.
바로 웹 접근성이죠.

Ajax 가 처음 등장했을 때 문제로 제기된 큰 문제가 몇가지가 있었는데..
그 중 하나는 뒤로 가기 버튼이었고, 다른 하나가 이 접근성에 해당하는 문제였습니다.

물론 모든 Ajax가 웹 접근성을 해치는 것은 아닙니다.
Ajax 를 사용하더라도 접근성을 해치지 않는 방법들이 여럿 고안되었으니까요.
하지만 국내에서 사용되고 있는 Ajax 의 대부분은 Javascript(또는 기타 클라이언트 스크립트)에만 의존하는 경향이 있습니다.

<a href="#" onclick="sampleFunction();"> 는 이제 그만.

그 중 가장 간단히 생각할 수 있는 것이 <a href="#" onclick="javascript:"> 등으로 시작하는 코드입니다.
하지만, Javascript 가 제대로 동작할 수 없는 환경에선 무용지물입니다. 그럼 어떻게 해야하는가..

<a href="대체 URL" onclick="return !sampleFunction();">

여기서 포인트는 두 개입니다. 대체 URL 과 sampleFunction() 앞의 ! 죠.
대체 URL 은 말 그대로 Javascript 가 동작하지 않을 때 이동해야할 페이지입니다.
물론 해당 동작에 대한 대체 페이지가 마련되어야 겠죠.

그러면 클릭할 때, onclick 이 실행되는게 아니라 대체 URL로 이동해버리는 것이 아니냐..라고 생각하시는 분들이 계실텐데..
!(느낌표) 는 그것을 막기 위해 고려된 것입니다.
여기서 조건은 sampleFuntion 은 xmlHTTPRequest 가 성공하면 True, 실패하면 False 를 리턴하도록 구현되어야합니다.

만약 sampleFunction 이 동작을 성공하면 True가 리턴되고, <a> 태그의 동작은 return false; 가 되어 실제로 페이지 이동을 하지않게 됩니다.
추천추천 : 554 추천 목록
번호 제목
3,035
 아이프레임(iframe) 비율 유지하면서 크기 조절하는 방법
3,034
 PHP 배열에서 무작위로 하나 뽑아주는 array rand() 함수
3,033
 PHP 정규식 정리
3,032
 PHP 정규식을 활용한 태그 및 특정 문자열 제거 및 추출 방법
3,031
 php 크롤링 또는 파싱 함수, 정규식 모음
3,030
 제이쿼리 기본 명령어
3,029
 웹페이지 가로 모드세로 모드 인식하기
3,028
 모바일 웹 화면 강제 회전(가로모드 고정)
3,027
 [HTML5]에서 frameset 대체 방법과 iframe 속성
3,026
 HTML <Audio> 사용법
3,025
 윈도우10 시스템파일 손상 (초간단 오류 복구방법!!)
3,024
 PHP 파일 존재 여부 파악하기(로컬 파일 존재 및 원격지 파일 존재)
3,023
 [CSS] 박스 세로 가운데 중앙 정렬 6가지
3,022
 CSS Layout 수평 & 수직 정렬
3,021
 여러 도메인들 간 쿠키 공유하기
3,020
 태그 사이에 있는 텍스트를 추출
3,019
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,018
 쿠키 생성,가져오기,삭제
3,017
 사용자 함수 모음
3,016
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,015
 [HTML5] <video> - DOM으로 제어하기
3,014
 HTML5 video 태그에서 영상 좌우반전
3,013
 PHP - 특정 태그 및 문자열 추출, 제거
3,012
 [PHP] define과 defined의 차이
3,011
 우클릭 완벽차단 스크립트
목록
뮤직트로트 부산광역시 부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.