1. 程式人生 > >javascript:用指令碼模擬鍵盤事件

javascript:用指令碼模擬鍵盤事件

這段程式碼只能在IE和FF瀏覽器下執行,Webkit截止到現在的版本還不支援initKeyEvent函式。但是支援createEvent("KeyboardEvent"),注意這裡是KeyboardEvent而不是KeyEvents,與FF有所區別。當然,在Webkit下可以使用UIEvent來模擬鍵盤事件。具體參考http://yui.lomoman.cn/docs/UserAction.js.html,如果這個網站掛了,搜尋initEvent也可以。

<script type='text/javascript'>
function initKeyEventDM()
{
  var eo=document.getElementById("ikevt");
  if( window.outerWidth == undefined )
  {
    eo.fireEvent("onkeydown");
  }
  else
  {
    var vo = document.createEvent("KeyEvents");
    vo.initKeyEvent("keydown", true, true, null, false, true, false, false, 9, 0);
    eo.dispatchEvent( vo );
  }
}
</script>
<a href='javascript:initKeyEventDM()'>點這裡模擬onkeydown事件</a> / / / /
<input id='ikevt' onkeydown='alert( event.altKey +" / "+ event.keyCode )' size=16>