2011-03-05 47 views
3

在我的HTML CSS:EnterKey不是在IE8有时工作,使用jQuery的的keyPressed

.edit_field { 
    height: 50px; 
    width: 495px; 
    line-height: 3.6; 
} 

HTML:

<textarea id="message" class='edit_field'>Enter message here</textarea> 

javascrpt:

$('#message').keypress(function(event) { 
    // not getting fired this block when I pressed enter key 
    // For all other keys its got fired well. 
    if(event.which == 13) { 
     // -- -- -- 
    } 
}); 

是否有任何问题我的代码或在我的浏览器(IE8)?

回答

5

很大试试这个:

$('#message').keyup(function(e){ 
    if(e.keyCode == 13){ 
    //your code probably want e.preventDefault() as well 
    } 
}); 

我发现按键实现,不要让他跨浏览器友好。只是一个想法。

编辑: 我现在记得为什么这在IE8中不起作用。回车键(键码13)被认为是一个“特殊的键”(以及其他类似的键盘上的箭头键)IE不火的“特殊键”这就是为什么我不得不使用KEYUP按键事件。

您可以在这里找到更多的信息:http://www.quirksmode.org/dom/events/keys.html

下看 “特殊键”

0

我遇到过这个,特别是与使用的onkeydown()在IE7表。其他键很好,但输入很棘手。我解决了矿山由HTML移动我的onkeydown()触发一下,从某些位置它wouldnt拿起进入,但会收集他人。

如果我记得我在body标签原本并将其移动到<div>只是身体内立即让我进入检测。我是用JSP有开关,但我不认为它不同