gpt4 book ai didi

html - 是否有 "texbox content changed"DOM 事件?

转载 作者:太空狗 更新时间:2023-10-29 13:29:29 24 4
gpt4 key购买 nike

每次我需要编写一段监控输入框的 JavaScript 时,我通常会做如下事情:

$("#field").keyup(myHandler).keydown(myHandler).change(myHandler);

它并不完美,但在大多数情况下通常都能正常工作,所以我继续。我只是碰巧有一点时间来适本地调查一下。可能主要的问题是它没有捕获通过鼠标完成的编辑(右键单击 + 粘贴/剪切)。而且,这不是我真正想要的。这会捕获我不太感兴趣的所有光标移动和其他键盘事件。所以问题是:

是否有一个可靠的跨浏览器事件,每次 输入或文本区域的内容发生变化时都会触发?

在简短的搜索中,我找到了 onpropertychange和 DOMAttrModified 事件。但除了它们并不适用于所有浏览器这一事实之外,它们似乎不会在编辑输入或文本区域时被触发。

最佳答案

看起来至少最新版本的 Internet Explorer、Firefox、Chrome 和 Safari 都支持 cutpaste 事件,这些事件在文本被触发后立即被触发在给定的输入元素中剪切或粘贴。事件由键盘 鼠标交互触发。监听这些事件和其他事件的组合应该可以提供您正在寻找的功能。

$("#foo").bind("keyup keydown change paste cut", handler);

我在 Mac 上的 Firefox 3.6、Chrome 5.0 (dev) 和 Safari 4 以及 Windows 上的 Firefox 3.5 和 IE8 上测试了这个。

关于html - 是否有 "texbox content changed"DOM 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2326795/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com