我在考慮按下鍵時反覆觸發onkeypress屬性。這通常是正確的,但是當我嘗試添加具有此屬性的新段落時,它有時不起作用。你能解釋一下爲什麼第二個代碼不能像第一個代碼那樣工作嗎?使用onkeypress屬性添加新段落
這是第一個代碼來測試按鍵屬性:
<!DOCTYPE html>
<html>
<head>
<title>Keypress</title>
</head>
<body>
<input type="text" maxlength="1" onkeypress="keypress_example()">
<div id="message">
</div>
<script>
function keypress_example(){
var newPar = document.createElement('p');
newPar.textContent= "Key is being pressed";
document.getElementById("message").appendChild(newPar);
}
</script>
</body>
</html>
它作爲intented。
<!DOCTYPE html>
<html>
<head>
<title>Keypress</title>
</head>
<body>
<input type="text" maxlength="1" onkeypress="keypress_example()" onkeydown="keydown_example()">
<div id="message">
</div>
<script>
function keydown_example(){
document.getElementById("message").innerHTML = "A key was pressed";
}
function keypress_example(){
var newPar = document.createElement('p');
newPar.textContent= "A key is being pressed";
document.getElementById("message").appendChild(newPar);
}
</script>
</body>
</html>
如果您對這個代碼做同樣首先將keydown事件觸發一次,之後的按鍵事件觸發一次,但它不是一次又一次觸發:當我還添加了一個onkeydown事件屬性的問題開始。這是什麼原因?
難道是因爲你沒有搜索onkeyup事件,所以一旦按下了初始鍵,就是腳本而不是搜索另一個,因爲邏輯上它仍然被按下? – 2014-10-31 12:16:09