js中如何实在3秒后自动按下回车键

JavaScript08

js中如何实在3秒后自动按下回车键,第1张

如果能直接调用事件处理函数的,就不要模拟按键,这样更可靠一些,因为键盘事件可能会受当前焦点控件的不同而产生不同的效果.

下面是通过WScript.Shell组件来模拟键盘按键事件的代码,但WScript.Shell可能需要较低的浏览器安全级别才可以正常工作.

<html>

<body>

<script type="text/javascript">

document.onkeydown = function(){

var oEvent = window.event

if (oEvent.keyCode == 13 ) {

alert("你按下了enter")

}

}

var WshShell = new ActiveXObject('WScript.Shell')

WshShell.SendKeys('{Enter}')

</script>

</body>

</html>

<SCRIPT language="javascript">

var count =1

var initFlag = false

function next()

{

if(count ==1&&!initFlag)

{

initFlag = true

txt.value ="1."

}

if(event.keyCode==13)

{

count++

txt.value =txt.value.concat("\r\n").concat(count+".")

window.event.keyCode = 0

window.event.returnValue= false

}

}

</SCRIPT>

<textarea name="13" id="txt" cols="" rows="" style="height:100px" onKeyDown="next()"></textarea>

结果:

1.问题1

2.问题2

3.

BUG:

1.回车后自动生成的编号,删除后不会回溯。

2.加了对回车的检测。如果想修改之前的编号中的内容,不能使用回车,否则同样达不到预期效果。

例如方法:

function test(){return 1}

页面加载完毕事件:

window.onload = function(){

setTimeout(test,1000)//1000毫秒=1秒后执行test方法

}

如果你使用jquery的话可以:

$(window).load(function(){

setTimeout(test,1000)//1000毫秒=1秒后执行test方法

})

setTimeout是只执行一次,重复执行使用setInterval

window.onload = function(){

setInterval(test,1000)//1000毫秒=1秒,每隔1秒执行一次test方法

}