私が作成しているチャットスクリプトでエンターキーをキャプチャするためのクロスブラウザーソリューションだと思ったものがあります。これは次のとおりです。
nn=(document.layers)?true:false;
ie=(document.all)?true:false;
function keyDown(e) {
var evt=(e)?e:(window.event)?window.event:null;
if(evt){
var key=(evt.charCode)?evt.charCode: ((evt.keyCode)?evt.keyCode:((evt.which)?evt.which:0));
if(key=="13") document.getElementById('chatEnter').submit();
}
}
document.onkeydown=keyDown;
if(nn) document.captureEvents(Event.KEYDOWN);
他の方から頂いたものなので、古いものでしょうか?とにかく、フォームの id 属性は、ご覧のとおり chatEnter です。document.forms[0].submit も使用してみましたが、どちらも機能しませんでした。FF では問題なく動作しますが、IE8 64 ビットではうまくいきません (これまでにテストしたのは 2 つだけです)。助けてくれてありがとう。