我能从“;输入“;事件是否有更好的方法来跟踪文本更改
What kind of information can I get out of an "input" event? Is there a better way of tracking text changes?
我正在尝试捕获对文本区域的更改,并破译对文本所做的更改。
我这样做是为了在某种程度上复制"可标记"编辑器的行为,比如Facebook上的编辑器——在那里你可以"标记"你的朋友或公共页面。
我的计划是跟踪字符串输入中"标记词"的索引(使用一些包含"标记词"位置数据的对象)。因此,这意味着,每当一个单词/短语被键入/粘贴到文本区域时,我都想知道文本中发生了什么变化,以更新"标记单词"的索引。
我遇到了一个似乎符合我需求的活动:
textAreaEl.bind("input", function (e) {});
为了继续进行此操作,我希望能够弄清楚触发此事件的文本中到底发生了什么变化。。来自'e'对象。
有没有办法破解这个事件触发前后文本的实际情况?我试了一下,但一无所获。(e..在我从键盘输入一些内容后,它甚至没有定义)。
此外,有没有更好的方法来跟踪较大字符串中的字符串?
您可以使用string.indexOf()
在另一个字符串中找到一个字符串的位置(索引为0)。
要查找文本区域或输入的完整文本输入,请使用element.value
。
若要检测文本区域何时被修改,您可以使用addEventListener
。
如果你想通过改变文本区域内容的颜色等来修改文本区域的内容,那就困难多了,我甚至建议使用div
元素和contenteditable
。
一些参考文献:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/indexOfhttps://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener
编辑:把你的问题读得慢一点,你所做的似乎是想看看你是否能察觉到发生了什么变化。然而,这样做的目的似乎是想看看添加了什么标签,因此这就成了一种x/y误解。
您不需要确切地检查所做的更改,只需要在每次按下新键时再次检查输入(甚至只检查#
键)。不需要明确地找出之前和之后的区别。
- 有没有一种方法可以从URL跟踪请求的域
- 我能从“;输入“;事件是否有更好的方法来跟踪文本更改
- 跟踪 Jquery 和 CSS 标识符的最佳方法是什么?
- 在 Web 应用中处理事件跟踪的最佳(高性能)方法
- 如何根据此方法跟踪Google Analytics中的出站链接,包括.标签和非交互
- 有没有一种优雅的方法可以使用谷歌分析跟踪不同帐户下的多个域
- 跟踪大型输入表单中更改的最快(Javascript/jQuery)方法
- 跟踪由 window.open() 方法打开的窗口上的用户活动
- 在HTML5画布上移动时跟踪鼠标坐标的简单方法
- 跟踪javascript中文本框控件上触发的退格事件位置的最佳方法
- 有没有一种方法可以跟踪嵌入facebook墙上的视频事件
- 有没有一种方法可以从Internet Explorer中的Error对象中获取行号或堆栈跟踪
- 方法在不使用外部提供程序的情况下跟踪Intranet页面上的访问者计数
- 什么'这是跟踪用户向下滚动页面的最实用的方法
- 在Javascript中跟踪方法调用的最佳方式
- 套接字.IO是跟踪用户是否在线的最好方法
- 当多次使用方法时,跟踪类中的变量
- 是否有一种方法可以跟踪对HTML元素的所有更改
- 在原型设计时跟踪javascript对象引用的最佳方法是什么?
- 在嵌套的ng-repeat中通过$index跟踪的最佳方法是什么?