7

在 SafariiPadiOS6,我想选择文本,然后使用 JavaScript 突出显示它(更改背景颜色)。但是,当我进行文本选择时,会自动弹出“复制”选项。我将如何禁用此“复制”选项?我可以在除iPadSafari 之外的所有其他浏览器上使用它。

这可能吗?我应该怎么办?

4

2 回答 2

22

如果要禁用通过在 iPhone 或 iPad 上的 Safari 中按住元素调用的“剪切/复制/粘贴”,请使用 css:

-webkit-user-select: none;

来自移动 Safari 上禁用“保留复制”的信息,由 Ben Collier 发布


-webkit-tap-highlight-color 属性接受任何标准 CSS 颜色值,但您可能需要提供 rgba 值以控制 alpha 透明度。禁用点击突出显示就像将 alpha 值设置为 0 一样简单,如下所示:

container {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
}

来自快速提示的信息:自定义由 Ryan Grove 发布的 Mobile Safari 点击突出显示颜色


所以我会使用 css 而不是 javaScript。

于 2013-02-11T16:26:57.763 回答
0

除了接受的答案;

将提到的属性仅提供给载体 div 或 body 元素,持有一些对象(图像和 SVG 元素等)仍然会显示工具提示。

* {
-webkit-user-select: none;
-webkit-tap-highlight-color: rgba(0,0,0,0);
}

将属性赋予所有元素 (*) 对我有用。


另外我猜用户选择的文本输入有问题/错误,所以你可能想排除它。

input {
-webkit-user-select: auto;
}
于 2016-10-29T13:41:00.920 回答