我正在为 texarea 做这件事。当用户按下 时应该调用一个函数Enter,但按下Shift+时什么都不做Enter。
我尝试在这里模拟许多 IM 通信器具有的功能:发送消息Enter但也使用Shift+添加多行Enter。
我正在为 texarea 做这件事。当用户按下 时应该调用一个函数Enter,但按下Shift+时什么都不做Enter。
我尝试在这里模拟许多 IM 通信器具有的功能:发送消息Enter但也使用Shift+添加多行Enter。
测试输入键码 (13) 以及是否按下了 shift 键。
...onkeyup = function(e) {
if (e.keyCode == 13)
{
// if (e.shiftKey === true)
if (e.shiftKey) // thruthy
{
// new line
}
else
{
// run your function
}
return false;
}
}
编辑:接受所有真实值e.shiftKey
element.onkeydown = function(o) {
o = o || event;
if (o.shiftKey && o.keyCode == 13) {
/* shift + enter pressed */
}
}
我相信您还需要一个 keydown 事件来检查 SHIFT 键,http://www.quirksmode.org/js/keys.html
查看事件对象的 shiftKey 属性,它会告诉您按下键时是否按住了 shift。