首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在焦点不在输入字段时禁止Ctrl+A选择输入字段的文本

如何在焦点不在输入字段时禁止Ctrl+A选择输入字段的文本
EN

Stack Overflow用户
提问于 2020-06-21 13:01:06
回答 1查看 886关注 0票数 0

下面的代码阻止Ctrl+A选择整个HTML页面,而鼠标则无法选择任何内容,这是很棒的。

但不幸的是,Ctrl+A并不能按需要在每个浏览器中的某些元素上工作:

当焦点集中在链接、选择或按钮上时:如果焦点集中在输入字段,则不应该是selected

  • Ctrl+A :当前输入字段中的文本应该选择

有了Mozilla和Internet,一切都能按需要工作。太棒了!

但谷歌Chrome、Opera、Edge和Safari的工作方式并不尽如人意。当焦点放在链接、选择或按钮上时,Ctrl+A将选择所有输入字段的文本。

在谷歌Chrome、Opera、Edge和Safari中,我如何防止这种不受欢迎的行为?

注意:如果焦点在输入字段上,Ctrl+A仍应选择当前输入字段的文本。

这是我的密码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<html>
  <head>
    <style type = "text/css">
      table {
        -webkit-user-select: none;
        -ms-user-select:     none;
        user-select:         none;
      }
    </style>
  </head>
  <body>
    <table>
      <tr>
        <td>
          Normal Text
        </td>
      </tr>
      <tr>
        <td>
          <a href = "">Link</a>
        </td>
      </tr>
      <tr>
        <td>
          <select>
            <option value = "a">Select A
            <option value = "b">Select B
          </select>
        </td>
      </tr>
      <tr>
        <td>
          <input type = "button" value = "Button">
        </td>
      </tr>
      <tr>
        <td>
          <input type = "text" value = "Input Field 1">
          <input type = "text" value = "Input Field 2">
        </td>
      </tr>
    </table>
  </body>
</html>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-21 21:26:11

我建议在CSS中添加下面的代码可以帮助您实现您的需求。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
body{
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

修改后的示例:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<html>
  <head>
    <style type = "text/css">
      body{
        -webkit-touch-callout: none;
        -webkit-user-select: none;
        -khtml-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
      }
      table {
        -webkit-user-select: none;
        -ms-user-select:     none;
        user-select:         none;
      }
    </style>
  </head>
  <body>
    <table>
      <tr>
        <td>
          Normal Text
        </td>
      </tr>
      <tr>
        <td>
          <a href = "">Link</a>
        </td>
      </tr>
      <tr>
        <td>
          <select>
            <option value = "a">Select A
            <option value = "b">Select B
          </select>
        </td>
      </tr>
      <tr>
        <td>
          <input type = "button" value = "Button">
        </td>
      </tr>
      <tr>
        <td>
          <input type = "text" value = "Input Field 1">
          <input type = "text" value = "Input Field 2">
        </td>
      </tr>
    </table>
  </body>
</html>

您可以注意到,当焦点不是在输入上,然后按下CTRL +A,那么什么都不会发生,但是如果焦点是在输入上,然后按下CTRL +A,那么它将选择该输入控件的所有文本。

我已经用MS遗留、MS (Chromium)、Google、IE11和Firefox浏览器测试了这段代码。代码按照您的要求工作。

参考资料:

Disable text selection in browser

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62504375

复制
相关文章
更改Linux默认端口,并设置仅允许密钥登录
接上一篇文章,更改Linux默认端口,防止被恶意扫描 为了服务器安全。我们接着搞 上步骤: 一:首先运行Xshell5来生成密钥。如图: 一直如图操作: 密码自行决定是否设置,推荐默认。 到这里,务必
刺_猬
2018/06/21
2.8K0
QT读取剪切板内容-实现复制粘贴文本和图片
很多软件都支持从剪切板里粘贴图片、文字数据到指定位置,比如:QQ、微信可以直接从剪切板粘贴图片、文字进行发送消息。这个功能QT里实现也很方便,接口QT都提供了。
DS小龙哥
2022/05/25
3.5K0
QT读取剪切板内容-实现复制粘贴文本和图片
如何从文本中构建用户画像
一文告诉你什么是用户画像 介绍了到底什么是用户画像,了解了用户画像的本质是为了让机器去看之后,这里谈一谈如何从文本中构建用户画像。
abs_zero
2018/04/11
4.8K0
如何从文本中构建用户画像
使用Python和OpenMV读取条形码
AiTechYun 编辑:xiaoshan.xiang 在今天的文章中,将会介绍OpenMV,以及他们的高级IDE,甚至会教你如何建立自己的条形码扫描系统。 开始要使用计算机视觉的OpenMV cam
AiTechYun
2018/04/18
3.5K0
使用Python和OpenMV读取条形码
Excel小技巧55: 复制并仅粘贴可见单元格
在Excel中,当我们复制包含有隐藏列/行的数据后,在粘贴时会将已隐藏的数据全部粘贴过来,如下图1所示。
fanjy
2020/09/17
15.7K0
Excel小技巧55: 复制并仅粘贴可见单元格
仅允许特定用户组通过NetScaler访问虚拟桌面
通常情况下我们的AD环境是为企业内多个业务系统提供服务,在交付Citrix VirtualDesktop环境后,我们通常会通过Citrix ADC(原名叫NetScaler)设备作为安全代理网关进行虚拟桌面访问,默认情况下Citrix ADC与AD集成后,所有用户都允许登录,只不过未经授权的用户无法看到任何资源。
SuperDream
2020/06/03
1.2K0
MySQL允许在唯一索引字段中添加多个NULL值
我们可以看出,此约束不适用于除BDB存储引擎之外的空值。对于其他引擎,唯一索引允许包含空值的列有多个空值。
Java那些事儿
2020/07/21
10.1K0
MySQL允许在唯一索引字段中添加多个NULL值
Flink实战(五) - DataStream API编程
Flink中的DataStream程序是实现数据流转换的常规程序(例如,过滤,更新状态,定义窗口,聚合)。 最初从各种源(例如,消息队列,套接字流,文件)创建数据流。 结果通过接收器返回,接收器可以例如将数据写入文件或标准输出(例如命令行终端)。 Flink程序可以在各种环境中运行,独立运行或嵌入其他程序中。 执行可以在本地JVM中执行,也可以在许多计算机的集群上执行。
JavaEdge
2022/11/30
1.6K0
Flink实战(五) - DataStream API编程
MicroPython的交互式解释器模式 (又称REPL)
此部分介绍了MicroPython的交互式解释器模式的特性,其常用术语为REPL(读取read-评估eval-打印print-循环loop),用于指代此交互式提示符。
云深无际
2021/03/12
1.5K0
加密usb接口防止U盘入侵
之前给大家介绍了badusb这个工具,大家可以知道黑客可以通过U盘进行快速入侵,那么应该如何防御这种手法呢,这篇文章就给大家介绍一下。
网e渗透安全部
2019/08/09
1.3K0
加密usb接口防止U盘入侵
再也不用复制粘贴了!自动读取Word文件并写入Excel
在做数据分析时,虽然操作docx并不是常用操作,但有些时候,数据分析师拿到的文件是docx或doc的Word文件,尤其是对数据具有至关重要的数据字典。接下来以一个数据字典为例来介绍下python-docx读取Word文件的基本操作。并将Word中的表格内容写入excel中。
数据STUDIO
2021/06/24
2.7K0
python 从网络URL读取图片并直接
如下代码段是关于python 从网络URL读取图片并直接处理的代码。 import urllib2 import Image import cStringIO def ImageScale(url,size): file = cStringIO.StringIO(urllib2.urlopen(url).read()) img = Image.open(file) img.show()
py3study
2020/01/08
2.1K0
SAP HANA SLT在表中隐藏字段并传入HANA的方法
SLT是在NetWeaver平台上运行的SAP Landscape Transformation Replication Server(SLT)。
matinal
2020/11/27
3.1K0
FL Studio21最新中文版本全新功能详细介绍
万众期待的FL Studio 21版本将于正式发布上线,目前在紧锣密鼓的安排上线中,届时所有购买正版 FL Studio 的用户,都可以免费升级到21版!按照惯例,本次新版也会增加全新插件,来帮助大家更好地创作。今天先给大家分享一下,介绍全部功能讲解,后续会有专门的解说功能视频发布。
用户7442547
2023/03/23
3.8K0
最新版水果FL Studio21新版本更新全解析!80项更新与改进!
万众期待的 FL Studio 21 版本将于正式发布上线,目前在紧锣密鼓的安排上线中,届时所有购买正版 FL Studio 的用户,都可以免费升级到21版!按照惯例,本次新版也会增加全新插件,来帮助大家更好地创作。今天先给大家分享一下,介绍全部功能讲解,后续会有专门的解说功能视频发布。
用户7442547
2022/12/07
3.4K0
物联网可以帮助管理可回收包装吗?
物联网资产跟踪解决方案可以实现可重复使用的包装,并在您的物流系统上实现闭环,使您的业务更加有利可图和可持续发展。
用户4122690
2020/04/13
7610
物联网可以帮助管理可回收包装吗?
重新定义读取器处理相关对象的方式
当%XML.Reader找到与启用了XML的类相关的XML元素时,读取器会调用该类的XMLNew()方法,后者又会在默认情况下调用%New()。也就是说,当读取器找到相关元素时,它会创建相关类的新对象。新对象由从XML文档读取的数据填充。
用户7741497
2022/07/05
4600
水果编曲软件FLStudio最新21简体中文版本
FL Studio最新发布21版本,也是一次重要的版本更新,让使用FL Studio软件的音乐制作人们进入到了全新的AI编曲时代,并改进了80多操作页面包括用户页面、项目文件夹、常规设置、导出导入等等,使用起来更加的简洁。本期给大家带来的是FL Studio 21版本的全方位解析,喜欢的小伙伴们赶紧来学习一下吧。大家辛苦啦!希望可以帮助各位更全面了解21新版的全部功能!
用户7442547
2023/02/19
2.8K0
点击加载更多

相似问题

仅允许用户在输入字段中键入文本

30

防止用户在文本框中键入文本,但允许粘贴键盘快捷方式

30

仅允许从文本字段中的字母数字粘贴数字

32

允许用户在输入文本字段中仅键入三个不同的字符

70

允许用户在Swift中仅键入下一个可用文本字段

214
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文