html – div contentEditable但Readonly

我有一个带有一些文本的div,我希望当光标悬停此div时选择文本.如果我按原样让这个div,当尝试选择所有(CTRL A)时,我选择所有页面内容,这意味着所有正文.

为了摆脱这个,我需要为这个div使用contenteditable属性.

但我不想让人们改变文字/复制/剪切等等

我尝试使用readonly这个div,但不起作用.

有什么建议吗?

PS1:这个div里面还有其他标签(html内容),但我不认为这是一个问题.

PS2:这里有一个例子:jsfiddle.net/msakamoto_sf/wfae8hzv/ – 但有问题.你可以剪切文字:(

解决方法

您可以通过处理“cut”事件并调用其preventDefault()方法来阻止用户进行切割.这将防止任何用户输入(包括浏览器的上下文菜单或编辑菜单)的剪切,而不仅仅是通过特定的组合键.

这个例子使用jQuery,因为你的jsfiddle使用它:

$("#editablediv").on("cut",function(e) {
    e.preventDefault();
});

相关文章

vue阻止冒泡事件 阻止点击事件的执行 <div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些