0

settimeout を使用して Web ページが読み込まれた後、マウス カーソルをフォーム テキスト ボックスにフォーカスしようとしています。私はいくつかの調査を行い、機能するスクリプトを見つけました。

<script type="text/javascript">
function formfocus() {
  document.getElementById('element').focus();
}
window.onload = formfocus;
</script>

しかし、それはマウスカーソルのオンロードに焦点を当てており、ページがロードされてから数秒後にロードしたいと考えています。上記のスクリプトを起動するために settimeout を使用しようとしていますが、問題があります。以下のコードは私がコーディングしたものです。うまくいけば、誰かが以下のコードで私を助けてくれ、私が達成しようとしていることの編集された作業コードを投稿してくれるととても助かります. ご覧のとおり、私はまだ学習中です。

<script type="text/javascript">
function formfocus() {
  document.getElementById('TextArea1').focus();
}
function2 timedFocus() {
setTimeout(function2()formfocus,1000);
}
</script>
<textarea name="TextArea1" id="TextArea1" style="position:absolute;left:338px;top:248px;width:150px;height:80px;z-index:0;" rows="2" cols="14"></textarea>
4

1 に答える 1

1

スクリプトに構文エラーがあります

  1. function2関数を定義する有効な方法ではありません。function
  2. そこsetTimeoutには半分クックされた関数定義があるため、呼び出しが間違っていますformfocus。最初の引数として渡すことができます
  3. あなたはtimedFocusどこにも電話していません。onloadイベントで呼び出すことができます

試す

function formfocus() {
    document.getElementById('TextArea1').focus();
}
function timedFocus() {
    setTimeout(formfocus,1000);
}

window.onload = timedFocus;

デモ:フィドル

于 2013-05-15T03:06:20.403 に答える