【发布时间】:2012-01-23 09:16:22
【问题描述】:
我正在尝试制作类似于 Twitter 的文本框,为此我编写了以下代码:
- 字数
- 使用的事件更改、键入和粘贴
Keyup 和 Change 事件工作正常,但粘贴事件有点奇怪,当我在 textarea 中粘贴一些内容时,字数此时并没有改变,经过一些调试后我发现 paste 事件在文本框上粘贴内容之前启动。我不知道他们在 Twitter 上是如何处理的。
这是我的代码:
事件:
'click #textboxId' : 'submitQuestion'
'keyup #textboxId' : 'wordCounter'
'change #textboxId' : 'wordCounter'
'paste #textboxId' : 'wordCounter'
wordCounter: ->
#Code for Word Count#
由于粘贴事件的预粘贴性质,该实例的工作计数不会改变。
您的建议和帮助将不胜感激。
【问题讨论】:
-
不改变所有这些事件句柄
-
@WebDeveloper 不,更改事件不会在粘贴时更新计数(立即),我们必须在粘贴某些内容后点击离开文本框。
-
@WebDeveloper - 问题是鼠标右键或工具栏粘贴。我真的很惊讶
change事件没有捕捉到这个。 -
该代码是什么语言的?它不是 JavaScript(包括 jQuery)——除非你删除了一堆花括号等等……在这种情况下,它不再是 JavaScript。无论如何,如果您收到“即将粘贴”事件,您可以添加
setTimeouthack 以在几毫秒后更新字数。但一般来说,即使你让它与你正在测试的任何浏览器一起工作,有些浏览器根本不允许你处理粘贴事件。 -
@nnnnnn 它的主干.js 和咖啡脚本。好的,我将尝试 setTimeout 功能。谢谢。
标签: javascript jquery mouseevent jquery-events