0

在使用 settimeout 加载网页后,我试图将鼠标光标聚焦到表单文本框中。我做了一些研究,发现了一个有效的脚本。

<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 回答