![](/img/trans.png)
[英]How to get the position of a typed letter in a textarea with Javascript?
[英]Javascript : How to get the last two characters typed into a textarea?
獲取鍵入textarea框的最后兩個字符的最佳方法是什么?
我需要輸入最后2個字符而不是整個字符串的最后兩個字符。
感謝幫助!
您需要捕獲textarea上的keypress
事件,然后記錄按下的鍵。 請注意,這將捕獲箭頭鍵,shift,alt等,所以如果你只想要字符,你需要過濾掉它們。
簡單的例子:
var keyPresses = [];
textarea.onkeypress = function(ev){
ev = ev || window.event;
var key = ev.keyCode || ev.which;
keyPresses.push(key);
}
這是一個用jQuery做的演示,同時顯示輸入的最后兩個字符: http : //jsfiddle.net/Ender/5gUHb/
來源:
var keys = [];
$('#target').keypress(function(e) {
keys.unshift(e.which);
update();
});
function update() {
$('#last')
.prepend($('<li/>').text(String.fromCharCode(keys[0])))
.children(':eq(2)').remove();
}
此演示捕獲文本區域上的按鍵事件,將值移至數組上(因為索引表示自按下該鍵后已按下的鍵數),然后更新顯示。
顯示更新只是將數組中的第一個值推送到<ul>
的頂部,並刪除列表中索引2處的子項(如果有)。
另外請注意,由於jQuery處理.keypress()
,您不必過濾掉修飾符或箭頭鍵。
更新請參閱Tim Down對我的回答的評論,以解釋應該進行哪些過濾。 根據Chrome中的快速測試,我最初的注意事項是錯誤的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.