我如何知道用户正在打字或粘贴?

2024-03-04

在我的 JSP 的文本字段中,我希望知道用户是在输入数据还是只是粘贴。 我如何使用 javascript 来识别它?

EDIT:根据安迪的回答,我知道如何去做,但仍然好奇那些人是如何编写 onpaste 事件的。


Safari、Chrome、Firefox 和 Internet Explorer 均支持onpaste事件(不确定 Opera)。闩锁到onpaste事件,只要粘贴某些内容,您就可以捕捉到。


Writing this is simple enough. Add the event handler to your input using html:
<input type="text" id="myinput" onpaste="handlePaste(event);">

或 JavaScript-DOM:

var myInput = document.getElementById("myInput");

if ("onpaste" in myInput) // onpaste event is supported
{
    myInput.onpaste = function (e)
    {
        var event = e || window.event;
        alert("User pasted");
    }
}
// Check for mutation event support instead
else if(document.implementation.hasFeature('MutationEvents','2.0'))
{
    /* You could handle the DOMAttrModified event here, checking 
       new value length vs old value length but it wouldn't be 100% reliable */
}

据我所知,Opera 不支持onpaste事件。你可以使用DOMAtrrModified事件,但即使脚本更改输入框的值也会触发,因此您必须小心处理它。不幸的是,我不熟悉突变事件,所以我不想通过编写一个我不自信的例子来搞乱这个答案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我如何知道用户正在打字或粘贴? 的相关文章

  • 如何实现 JavaScript 对象被垃圾回收时触发的函数?

    实际上 垃圾被收集 销毁或以其他方式超出范围 我想要做的是 当调用了 bind 方法的对象被销毁时 取消绑定非 DOM 元素上的事件处理程序 编辑 我又查看了我的代码 并决定我真正需要它的唯一地方是当不再需要包含该对象的模块时 这通常发生在
  • javascript中怪异模式的元素宽度?

    我一直在浏览所有流行的 js 库 但我找不到一个具有 DOM 元素宽度函数的库 该函数实际上可以解释 Internet Explorer 中的怪异模式 问题是 当启用怪异模式时 填充和边框不会计入宽度 据我所知 当省略 doctype 或将
  • 在淘汰赛应用程序中使用 setInterval 进行轮询实现?

    我正在尝试使用 setInterval 实现简单的轮询机制 我有一个视图模型如下 define knockout jquery function ko function ViewModel var self this setInterval
  • 如何在 Javascript 中动态创建一个适用于所有浏览器的单选按钮?

    使用例如动态创建单选按钮 var radioInput document createElement input radioInput setAttribute type radio radioInput setAttribute name
  • 匹配数组中的对象并合并

    UPDATE 我有一个名为的对象数组cars包含 li 标签 其中包含有关汽车的属性数据 例如价格 汽车类型等 我的目标是 如果这些汽车符合某些标准 则将它们合并到一个列表中 要求 快速性能 保持相同的汽车数组结构 Main Goal Ma
  • Access-Control-Allow-Headers 不允许请求标头字段 Access-Control-Allow-Headers

    我试图通过发布请求将文件发送到我的服务器 但是当它发送时会导致错误 Access Control Allow Headers 不允许请求标头字段 Content Type 所以我用谷歌搜索了错误并添加了标题 http post rootSc
  • 在 javascript 中访问 ajax POST 响应

    我正在从 javascript 函数发出 ajax POST 请求 function UpdateMetrics ajax type POST url MyHandler ashx Param1 value1 data contentTyp
  • 在 Javascript 中动态添加事件处理程序

    我在使用 Javascript 时遇到了一个奇怪的问题 我得到的是一个特定格式的字符串 我将尝试用它创建一个表 该表每行只有一个单元格 字符串的格式为 每个单元格 行 需要显示内容 将传递给的参数onmouseover当用户将鼠标移动到显示
  • 通过 Javascript 将图像切割成碎片

    我正在创建一个简单的拼图游戏 为了做到这一点 我需要将我正在使用的图片切成 20 块 Javascript 有没有办法将一张图片切成 20 个相等的部分 并将它们保存为网页中的 20 个不同的对象 或者我只需要进入 Photoshop 自己
  • javascript中输入类型时间的值

    我有这个html
  • Office excel将CORS请求作为跨域请求

    我正在尝试从我的 Excel 插件发出跨域请求 正如这里所建议的 http dev office com docs add ins develop addressing same origin policy limitations http
  • 使用 javascript 禁用按钮:FF 与 IE

    我有一排按钮 它们都会创建一个我想在新选项卡中打开的 pdf 文件 这样按钮页面就会保持在顶部 并且 pdf 会打开以进行打印 为了防止单击按钮两次 我禁用该按钮 如下所示 我使用 python
  • nodejs mocha suite 未定义错误

    我正在尝试使用摩卡运行一些测试 但似乎无法克服这个错误 E tdd nodejs cart gt mocha cart test js node js 201 throw e process nextTick error or err Re
  • 这种 JavaScript 编码风格有什么问题? (闭包与原型)

    我们一直在讨论如何最好地处理我们的 JS 应用程序中的对象 研究 Stoyan Stefanov 的书 阅读无数关于 新 这个 原型 闭包等的 SO 帖子 事实上有很多 而且它们有这么多相互竞争的理论 表明没有完全明显的答案 让我们假设我们
  • Angular 2 runOutsideAngular 仍然改变 UI

    从我的理解来看runOutsideAngular https angular io docs ts latest api core index NgZone class html runOutsideAngular anchor 如果我需要
  • Javascript 中的线性回归 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我想在网络浏览器中用 Javascript 进行最小二乘拟合 目前 用户使用 HTML 文本输入输入数
  • 在角度控制器中监听文档事件

    如何捕获角度控制器中的事件 我有文档级事件 所以我需要在角度控制器中捕获事件 这可能吗 Update 我有独立的 js 文件来处理来自相机的一些操作 document addEventListener myCameraEvent handl
  • 将 div 文本分配给变量然后显示它

    我有一个简单的任务 我试图完成学习 JavaScript 但一直无法找到明确的答案 这是代码 div Testing div 基本上我希望将方框 div 中的文本存储到变量中 然后 我想在页面的不同部分显示该变量的文本 使用上面的代码我得到
  • 更改javascript nodejs中所有页面的href url

    我已经实现了具有多种语言下拉菜单的引导导航栏 当我选择语言时 它将翻译页面 如何更改其他页面的 url 和按钮文本 当我选择french 将所有网址更改为 fr about and fr contact 如何使用 JavaScript 进行
  • 如何使用引用该键的变量来获取对象键中的值?

    我有一个对象 我可以引用密钥a如下 var obj a A b B c C console log obj a return string A 我想通过使用变量引用对象键来获取值 如下所示 var name a console log ob

随机推荐

  • Node 中express.js 和 axios.js 的区别

    我们使用axios来进行get post等http请求 我们也出于同样的目的使用快递 然而 根据我读到的内容 它们有不同的目的 请解释一下如何 PS 如果能举例说明就太好了 你可以将express js视为一个仓库 app get item
  • 从 LinkedHashMap 中检索值

    我有一个看起来像这样的对象 test1 get tags restcalls test2 put tags restcalls 我正在检索上面的对象 如下所示 HashMap json new ObjectMapper readValue
  • Java 2D 图像调整大小忽略双三次/双线性插值渲染提示(OS X + linux)

    我正在尝试使用 Image Voodoo 插件在 JRuby Rails 应用程序中为上传的图像创建缩略图 问题是调整大小的缩略图看起来像 屁股 似乎生成缩略图的代码绝对正确地执行了所有操作 将插值渲染提示设置为 双三次 但在我们的开发环境
  • 什么是 Firebase 远程配置开发者模式

    我正在将 Firebase 远程配置添加到应用程序中 但我对其用途感到困惑 setMinimumFetchIntervalInSeconds setDeveloperModeEnabled true false 文档讨论了开发人员模式 但我
  • 应用程序加载器:错误 ITMS-90502

    我正在尝试将新版本上传到 TestFlight 但应用程序加载器给出以下错误 错误 ITMS 90502 无效捆绑包 仅包含 arm64 的应用程序 切片列表中还必须有 arm64 Info plist 中的 UIRequiredDevic
  • MappedSuperclass - 更改子类中的 SequenceGenerator

    我将 JPA2 与 Hibernate 结合使用 并尝试为我的实体引入一个公共基类 到目前为止看起来是这样的 MappedSuperclass public abstract class BaseEntity Id private Long
  • iOS:在 swift 中将 UnsafeMutablePointer 转换为 String?

    正如标题所说 在 swift 中将 UnsafeMutablePointer 转换为 String 的正确方法是什么 lets say x UnsafeMutablePointer
  • 从 opening_hours 获取一天 Google 自动完成 API

    我需要从餐厅营业时间 自动完成 api 获取一天 我可以获得开放和关闭时间 但无法获得日期 这是我的代码 if place openingHours periods nil let period place openingHours per
  • 是否可以仅使用 C++ 制作 iPhone 应用程序? [复制]

    这个问题在这里已经有答案了 可能的重复 在 iOS 和 Mac OS X 应用程序中使用 C https stackoverflow com questions 8759573 utilizing c in ios and mac os x
  • Miniconda3:在当前 win-32 通道中找不到软件包匹配问题

    我一直在遵循如何安装 Miniconda3 并使用它来安装不同软件包的指南NumPy and SciPy 然而 安装 Miniconda3 并在 PyCharm 中打开一个新项目后 指南告诉我应该写 conda install numpy
  • C# 属性修改方法

    全部 也许我在谷歌上搜索得不够 但我找不到关于这个问题的任何例子 在 C 中是否可以创建一个自定义属性 该属性应用于类并修改其所有方法 例如 添加Console WriteLine Hello i m modified method 作为第
  • 如何仅在安装(而不是卸载)中执行自定义操作

    我确信这相当容易 但我有点困难 我有一个自定义操作 可以在安装时执行不同的 非 msi 安装程序 不幸的是 我注意到它还在卸载时执行安装程序 我已经查看了这些选项 但我似乎无法找到如何阻止这种情况 如果有人能帮助我 我将非常感激 另外 如何
  • SWI-Prolog 中的可逆谓词和字符串

    append 3是一个非常强大的谓词 假设我想要一个以相同方式工作但针对 SWI Prolog 字符串的谓词 我看到的最简单的方法是将这些字符串转换为列表string codes 2 然后应用append 3 然后使用string code
  • Pandoc md 到 pdf:在分页之前插入图像时保持顺序

    正如标题所述 我的问题是关于 pandocs md 到 pdf 的 当我像这样转换降价时 Title text that is about a 3 4 page image that is too large to fit page ima
  • 关于 GWT 中 MVP 的问题。 (总体概述)

    你们中的任何人都可以对 MVP 模式在 GWT 应用程序中的使用给出一个很好的解释吗 我看过的任何示例 我发现很难理解实现该模式的概念 诸如这是什么之类的问题 它实现了什么 它是如何实施的 以及如何扩展它以适应未来的修改 http code
  • 如何在javascript中获取所有待处理的http请求?

    javascript 或 angular2 有没有办法 获取待处理的 http 请求列表 目标是启动 其他几个进程 根据这个榜单的波动 是否存在类似可访问的请求堆栈之类的东西 Thanks 事实上你可以扩展Http类来拦截请求执行 impo
  • 有没有更干净的方法来可靠地使用 write() 函数?

    我读了man页 我的理解是 如果write 失败并设置errno to EAGAIN or EINTR 我可以执行write 再次 所以我想出了以下代码 ret 0 while ret count write count write con
  • 如何使用 PHP 在网站上实现 OCR? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 'NSInvalidArgumentException',原因:'*** -[NSURL initFileURLWithPath:]: nil 字符串参数'

    我对这里发生的事情感到摸不着头脑 打印插件不起作用 我正在尝试向应用程序添加打印机插件 映射 xml 并加载 html 文件后 我在 Xcode 中没有看到错误 但是 当我运行该应用程序时 它崩溃了并且日志状态如下 由于未捕获的异常而终止应
  • 我如何知道用户正在打字或粘贴?

    在我的 JSP 的文本字段中 我希望知道用户是在输入数据还是只是粘贴 我如何使用 javascript 来识别它 EDIT 根据安迪的回答 我知道如何去做 但仍然好奇那些人是如何编写 onpaste 事件的 Safari Chrome Fi