不同的浏览器中的事件监听机制是不同的,以onKeyPress事件为例。
有个textarea,
<textarea id="text"></textarea>
经常会定义onKeyPress="keypress();",并定义以下方法。
var keypress = function(){
var k = window.event.keyCode;
}
实际上这类代码在firefox下无效。
那么修改为如下方式:
onKeyPress="keypress(event);"
var keypress = function(event){
var k = event.keyCode;
}
还是有问题,按下k后,在IE中取值为107,FF下取值则为0。
将keyCode改为charCode试试。
var k = event.charCode;
IE下取值为undefined,FF下取值为107了
或许可以做判断
if(是IE)
var k = event.keyCode;
else if(是FF)
var k = event.charCode;
不过,如果有组合键的话,这种方法也不行了。
当按下Ctrl+k时,
在IE中,keyCode为11,charCode为undefined
在FF中,keyCode为0,charCode为107
这里我使用的办法是JQuery。
$("#text").bind("keyPress",function(event){
var k = event.which;
});
这里使用的which就不论在IE下还是FF中,是单一按键还是组合键了,其值都是是107
然后使用String.fromCharCode(k),就可以取出按下的值了。
分享到:
- 2009-09-21 19:08
- 浏览 1468
- 评论(2)
- 论坛回复 / 浏览 (2 / 4848)
- 查看更多
相关推荐
有个textarea, Java代码 代码如下: <textarea id=”text”></textarea> 经常会定义onKeyPress=”keypress();”,并定义以下方法。 代码如下: var keypress = ... 这里使用的which就不论在IE下还是FF中,是
主要介绍了JavaScript让Textarea支持tab按键的方法,涉及javascript针对textarea实现响应tab按键的方法,需要的朋友可以参考下
VUE监控textarea输入的字符数量,实时显示可以输入多少个文字。
主要介绍了javascript实现textarea中tab键的缩排处理方法,涉及javascript处理鼠标事件及页面元素的相关技巧,需要的朋友可以参考下
textarea长度控制
在textarea中显示html页面的javascript代码
js监听鼠标事件控制textarea输入字符串的个数.docx
NULL 博文链接:https://yelb.iteye.com/blog/1141762
javascript获得光标所在的文本框(text textarea)中的位置.docx
Textarea Fullscreen是一个jquery插件大小只有5K,可以将textarea设置为全屏模式,
主要与大家分享一个JavaScript处理textarea中的字符成每一行实例,很简单,但很实用,大家可以看看
本文实例分析了JavaScript中Textarea滚动条不能拖动的解决方法。分享给大家供大家参考,具体如下: 在IE中,你是否碰到过Textarea的滚动条不能拖动,但点上下按钮可以滚动内容? 这个问题的原因很可能就是在该...
对于写javascript写网页编辑器的人来说,获取textarea中的光标位置是一个非常重要的问题,而往往很多人在这个地方不知所措,找不到好的办法。昨天我在网上找到了一段javascript代码,本来不想把原版放在这里的,就是...
这里向大家介绍用JavaScript判断textarea值是否为空的方法。 下面给出JavaScript函数: if(document.getElementById(htmer).value==''){alert(请输入内容!);return false;} 注意上面代码中的红色部分==”,...