不同的浏览器中的事件监听机制是不同的,以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
- 浏览 1506
- 评论(2)
- 论坛回复 / 浏览 (2 / 4874)
- 查看更多
相关推荐
有个textarea, Java代码 代码如下: <textarea id=”text”></textarea> 经常会定义onKeyPress=”keypress();”,并定义以下方法。 代码如下: var keypress = ... 这里使用的which就不论在IE下还是FF中,是
总之,通过JavaScript的事件监听机制,我们可以精确控制用户在`textarea`中的输入,不仅可以限制字符数,还能实现各种复杂的交互功能。理解并熟练应用这些事件,对于提升网页的用户体验至关重要。
本文将详细介绍如何使用JavaScript来实现让Text Area支持Tab按键的功能,具体包括以下内容: 首先,需要了解的是HTMLTextAreaElement,这是HTML文本区域元素对应的JavaScript对象。它允许我们通过编程方式控制文本...
为了在textarea中实现这一功能,我们可以监听键盘事件,并在用户按下`Tab`键时插入特定数量的空格(通常为四个空格)来模拟缩进效果。 代码如下: ```javascript function editTab() { var code, sel, tmp, r; ...
在JavaScript中,我们可以使用`document.getElementById`或`document.querySelector`来选取特定的`textarea`元素。例如,假设我们的`textarea` ID为`myTextarea`,可以这样选取: ```javascript var textarea = ...
3. **JavaScript事件处理**:通过JavaScript可以监听并处理各种事件,如用户输入时触发的`onkeypress`事件、失去焦点时触发的`onblur`事件等。 #### 二、实现方法详解 ##### 1. 使用`maxlength`属性 最简单的方法...
以上知识点详细解释了如何使用JavaScript监听鼠标事件来控制textarea输入框中的字符数,并提供了实现该功能的具体代码示例和逻辑说明。这些知识点不仅涉及了前端开发的基本概念,还展示了如何通过编程实现具体的用户...
在示例中,`onkeypress`事件被用来监听textarea的按键行为。在不同浏览器中,事件对象的获取方式有所不同:IE使用全局的`window.event`,而其他浏览器则通过事件处理函数的参数传递。这段代码演示了如何禁用textarea...
为了实时检测用户在`textarea`中的输入,需要监听键盘事件。JQuery提供了`.keydown()`和`.keyup()`方法,分别用于捕获键盘按键按下和释放的事件。 ```javascript $("#address").keydown(function() { // 键盘按键...
- 实现方法:使用JavaScript监听用户的输入事件,根据输入内容过滤下拉列表中的选项。 - **2.4 多行文本框中只能输入iMax文字。如果多输入了,自动减少到iMax个文字(多用于短信发送)** - 描述:限制多行文本框中...
1. 监听textarea的输入事件。 2. 获取当前textarea的值及其最大长度限制。 3. 计算并显示当前已输入的字符数与最大字符数之间的差值。 4. 当输入的字符数达到最大限制时,阻止进一步输入,并显示相应的提示信息。 #...
这种方法利用了JavaScript的事件监听机制,响应用户在textarea中的输入行为,根据设定的字符限制条件动态地对用户输入进行处理。 知识点一:JavaScript事件监听机制 JavaScript事件监听是Web开发中的一个重要概念,...
1. **事件监听**:首先,我们需要监听用户的交互事件,如点击文本框(`<input>` 或 `<textarea>`)时触发软键盘的显示。可以使用`addEventListener`方法添加事件监听器,例如`addEventListener('focus', ...
然后,我们可以在JavaScript中获取这个元素并添加事件监听器,以实现动态效果。例如,可以监听`keyup`事件,每当用户释放一个按键时,执行相应的函数: ```javascript document.getElementById('dynamicTextBox')....
JavaScript是一种广泛应用于网页开发中的脚本语言,它能够实现动态交互效果,提升用户体验。其中,接收键盘输入是实现用户与网页交互的关键环节之一。 ### JavaScript接收键盘输入的方式 #### 1. `prompt()`函数 ...
在本例中,`textarea`元素使用了`onkeyup`属性来绑定一个自定义的`strLenCalc`函数,此函数会在每次用户键盘按键抬起时执行。`strLenCalc`函数接收三个参数,分别是操作的textarea对象、用于显示剩余字数的元素的ID...
从以上描述中,可以看出实现textarea文本域字数限制的方法是基于JavaScript对事件的监听,以及对DOM元素的动态操作。通过合理使用HTML事件属性,可以实现对用户输入的即时反馈和控制。 另外,需要注意的是,虽然此...
在给定代码片段中,我们看到`<textarea>`元素上绑定了两个JavaScript事件监听器——`onkeyup`和`onkeydown`。`onkeyup`事件在用户释放键盘上的某个按键后触发,而`onkeydown`则在按下按键时触发。通过这两种事件,...