[javascript] jQuery를 사용하여 페이지로드시 양식 입력 텍스트 필드에 집중하는 방법은 무엇입니까?

이것은 아마도 매우 간단하지만 페이지로드시 텍스트 상자에서 커서가 깜박이는 방법을 알려주는 사람이 있습니까?



답변

첫 번째 텍스트 필드에 초점을 설정하십시오.

 $("input:text:visible:first").focus();

첫 번째 텍스트 필드도 수행하지만 [0]을 다른 인덱스로 변경할 수 있습니다.

$('input[@type="text"]')[0].focus(); 

또는 ID를 사용할 수 있습니다 :

$("#someTextBox").focus();


답변

이를 위해 HTML5autofocus 를 사용할 수 있습니다 . jQuery 나 다른 JavaScript가 필요하지 않습니다.

<input type="text" name="some_field" autofocus>

IE9 이하에서는 작동하지 않습니다.


답변

확실한:

<head>
    <script src="jquery-1.3.2.min.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(function() {
            $("#myTextBox").focus();
        });
    </script>
</head>
<body>
    <input type="text" id="myTextBox">
</body>


답변

왜 모두가 이렇게 간단한 것에 jQuery를 사용 하는가?

<body OnLoad="document.myform.mytextfield.focus();">


답변

이를 수행하기 전에 사용자 인터페이스를 고려하십시오. jQuery의 ready()함수를 사용하여 문서를로드 할 때이 작업을 수행한다고 가정 합니다. 문서를로드하기 전에 사용자가 이미 다른 요소에 초점을 맞춘 경우 (완벽히 가능) 초점을 잃어 버리는 것은 매우 자극적입니다.

onfocus<input>요소에 속성 을 추가 하여 사용자가 이미 양식 필드에 초점을 맞추 었는지 여부를 기록한 다음 다음과 같은 경우 초점을 훔치지 않음으로이를 확인할 수 있습니다.

var anyFieldReceivedFocus = false;

function fieldReceivedFocus() {
    anyFieldReceivedFocus = true;
}

function focusFirstField() {
    if (!anyFieldReceivedFocus) {
        // Do jQuery focus stuff
    }
}


<input type="text" onfocus="fieldReceivedFocus()" name="one">
<input type="text" onfocus="fieldReceivedFocus()" name="two">


답변

HTML :

  <input id="search" size="10" />

jQuery :

$("#search").focus();


답변

오래된 질문에 부딪쳐서 죄송합니다. 나는 구글을 통해 이것을 발견했다.

또한 둘 이상의 선택기를 사용할 수 있으므로 특정 유형이 아닌 모든 양식 요소를 대상으로 지정할 수 있습니다.

예.

$('#myform input,#myform textarea').first().focus();

첫 번째 입력 또는 텍스트 영역에 초점을 맞추고 물론 다른 선택기를 믹스에 추가 할 수도 있습니다. 특정 요소 유형을 먼저 확신 할 수 없거나 다소 일반적인 / 재사용 가능한 것을 원한다면 Hnady.