IE에서 포커스가 작동하지 않습니다: A 해상도
IE7에서 focus() 함수가 작동하지 않는 상황에서 입력 필드 내에 커서를 배치하려면 다른 접근 방식이 필요합니다.
IE에서 이 문제를 해결하려면 지연된 실행 동작으로 인해 setTimeout 함수를 활용하세요. 다음 코드를 구현하세요.
<code class="javascript">setTimeout(function() { document.getElementById('myInput').focus(); }, 10);</code>
이 코드는 focus() 함수를 실행하기 전에 10밀리초의 지연을 시작하여 IE의 지연된 응답을 수용합니다.
그러나 Opera에서는 문제가 지속될 수 있습니다. Opera에서 포커스를 설정하기 위한 잠재적인 솔루션을 살펴보세요.
요소를 쉽게 사용할 수 없는 상황에 맞는 고급 솔루션에는 요소에 액세스할 수 있을 때까지 짧은 지연을 두고 재시도하는 것이 포함됩니다. 이렇게 하면 로드 속도가 느린 페이지나 로드하는 데 시간이 걸리는 요소와의 호환성이 보장됩니다. 다음 코드를 구현하세요.
<code class="javascript">setTimeout( function( ) { var el = document.getElementById( "myInput" ) ; ( el != null ) ? el.focus( ) : setTimeout( arguments.callee , 10 ) ; } , 10 ) ;</code>
이 코드는 요소의 가용성을 확인하고 성공할 때까지 10밀리초마다 해당 요소에 집중하려고 시도하는 재귀 setTimeout 함수를 설정합니다.
위 내용은 IE에서 Focus()가 작동하지 않는 이유는 무엇이며 어떻게 해결할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!