>  기사  >  웹 프론트엔드  >  HTML5 실습 및 분석 포커스 관리(activeElement 및 hasFocus)

HTML5 실습 및 분석 포커스 관리(activeElement 및 hasFocus)

黄舟
黄舟원래의
2017-02-10 14:57:281928검색

요즘 웹사이트에서는 장애인에 대한 관심이 점점 더 높아지고 있습니다. 많은 웹사이트에서는 시력이 좋지 않은 사람들이 웹을 쉽게 탐색할 수 있도록 편리한 채널을 만들기 시작했습니다. 다음으로 집중력 관리와 시각장애인을 위한 웹사이트에 대해 몇 가지 소개하겠습니다.

21세기에는 웹사이트에서 장애인에 대한 관심이 점점 높아지고 있으며, 시력이 좋지 않은 사람들이 웹사이트를 탐색하면 기본적으로는 다른 유형의 장애를 언급하는 것이 좋습니다. 탐색 방법. 시력이 좋지 않은 사람들은 기본적으로 집중하는 데 의존하여 웹사이트를 탐색하고, 주로 집중해서 내용을 읽는 데 의존하여 웹사이트를 탐색합니다. 따라서 시력이 좋지 않은 사람들을 위한 웹사이트를 만들 때는 초점 관리가 특히 중요합니다.

객관적으로 시력이 나쁜 사람이 존재한다는 이유만으로 HTML5에는 DOM 포커스 관리를 보조하는 기능이 추가되었습니다.

1. document.activeElement 속성

Document.activeelement 속성은 항상 현재 포커스가 있는 DOM의 요소를 참조합니다. 요소는 사용자 입력(일반적으로 Tab 키 누르기), 코드에서 focus() 메서드 호출 및 페이지 로드를 통해 포커스를 얻습니다. 먼저 작은 예를 살펴보겠습니다.

HTML 코드

<body id="body">
  <input id="btn" type="button" value="梦龙小站" />
</body>

JavaScript 코드

window.onload = function(){
	var btn = document.getElementById("btn");

	//页面加载获取焦点
	alert(document.activeElement.id) // body
	
	//调用focus()方法获取焦点
	btn.focus();

	alert(document.activeElement.id) // btn
};

기본적으로 문서가 방금 로드되면 document.body 요소에 대한 참조가 document.activeelement에 저장됩니다. 문서를 로드하는 동안 document.activeelement의 값은 null입니다. document.activeelement를 사용하여 문서가 로드되었는지 확인할 수 있습니다.

 2. document.hasFocus() 메소드

HTML5에서는 새로 추가된 document.activeelement 속성 외에 document.hasfocus() 메소드도 추가합니다. 이 방법은 문서에 포커스가 있는지 확인하는 데 사용됩니다. 먼저 작은 예를 살펴보겠습니다.

HTML 코드

<body id="body">
  <input id="btn" type="button" value="梦龙小站" />
</body>

JavaScript 코드

window.onload = function(){
	var btn = document.getElementById("btn");

	alert(document.hasFocus())  //true
};

hasFocus() 메소드를 사용하면 문서가 포커스를 얻었는지 여부와 사용자가 페이지와 상호 작용하는지 여부를 알 수 있습니다. .

어떤 요소가 포커스를 받았는지 확인하기 위해 문서를 쿼리하고 문서가 포커스를 받았는지 확인하는 것은 웹 애플리케이션에 대한 접근성을 제공하는 가장 중요한 두 가지 기능입니다. 액세스 가능한 웹 애플리케이션의 주요 특징 중 하나는 적절한 포커스 관리이며, 어떤 요소가 포커스를 받는지 정확히 아는 것은 적어도 예전만큼 추측할 필요가 없습니다. 먼저 작은 예를 살펴보겠습니다.

HasFocus() 애플리케이션 예시

HTML 코드

<p id="meng">鼠标放上来</p>
<p id="long" style="display:none;">获取焦点了</p>

JavaScript 코드

window.onload = function(){
	var oMeng = document.getElementById("meng");
	var oLong = document.getElementById("long");

	oMeng.onmouseover = getFocus;
	oMeng.onmouseout = loseFocus;

	function getFocus(){
		if (document.hasFocus())
		{
			oLong.style.display = "block";
		}
	}
	function loseFocus(){
		oLong.style.display = "none";
	}

};

위 예시에서는 hasFocus() 메소드를 최대한 활용하여 초점을 얻기 위해. 이를 통해서도 hasFocus() 메소드의 매력과 포커스 관리의 유용성을 느낄 수 있습니다. 이 hasFocus() 메서드와 activeElement 속성을 구현할 수 있는 브라우저는 FireFox 3+, Safari 4+, Chrome, Opera 8+ 및 IE 4+입니다.

HTML5의 실제 전투와 포커스 관리 분석(activeElement 및 hasFocus)을 여기에서 모두와 공유합니다. 중국의 웹 애플리케이션 접근성은 아직 개발이 필요합니다. 포커스 관리(activeElement 및 hasFocus)를 잘 마스터하면 기본적으로 웹 애플리케이션의 접근성을 얻을 수 있습니다. Menglong Station에 대한 지원에 감사드립니다. HTML5에 대한 추가 업데이트는 Menglong Station의 HTML5 실제 전투 및 분석에 대한 관련 업데이트를 주목해 주시기 바랍니다.


위 내용은 HTML5 실제 전투 내용과 포커스 관리(activeElement, hasFocus) 분석 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.