2009-12-21 71 views
0

我想從javascript調用默認的keydown事件處理程序。可能嗎?Javascript:調用默認的keydown事件處理程序

+1

什麼是默認值keydown事件處理程序?什麼元素?爲什麼? – Marius 2009-12-21 11:10:37

+1

不是100%相同,但相關SO張貼在這裏:http://stackoverflow.com/questions/202285/trigger-a-keypress-with-jquery-and-specify-which-key-was-pressed – 2009-12-21 11:11:51

+0

>> Not 100%相同,但相關SO張貼在這裏:stackoverflow.com/questions/202285/ okw,謝謝。 – 2009-12-21 11:16:34

回答

2

如果事件有一個明確的事件處理程序,你可以直接調用它:

// Precondition - the element has an explicit handler registered 
element.onkeydown(); 

否則,有沒有辦法明確地告訴瀏覽器做「它無論如何都會做。」發生這種情況的唯一方法是不要阻止事件冒泡 - 如果要設置超時時間並允許事件繼續,那麼這實際上是一種痛苦,但實質上這是不可能的。

但是,在大多數情況下,您可以在事件處理函數上調用您自己的代碼,並讓keyDown事件繼續瀏覽器。如果這不可能出於任何原因,您通常可以編寫自己的方法來模擬事件的效果(例如,更改輸入字段的內容,提交表單等)

0

沒有默認的keydown事件。當按鍵在任何表單元素上按下時,按下按鍵事件,緊接着按鍵事件,以及輸入值時文本框上的textInput事件可能發生。然後在釋放密鑰時生成密鑰事件 以下示例顯示使用onKeyDown事件處理程序在文本框中顯示消息。

<body><form action="" method="POST" id="myForm"><input type="text" name="myText" onKeyDown="changeVal()"><script type="text/javascript" language="JavaScript">s1 = new String(myForm.myText.value)function changeVal() { s1 = "You pressed a key" 
myForm.myText.value = s1.toUpperCase() }</script></form></body> 
相關問題