javascript - 突出显示/选择具有范围的多个div/contenteditable?

标签 javascript contenteditable range

假设我有一组 contenteditable="true" div。

<div id="0" contenteditable="true"></div>
<div id="1" contenteditable..></div>
<div...etc></div>

我不能只有一个 div,必须有多个 div。 我怎样才能突出显示多个 div 的内容?使用范围?还有什么吗?

最佳答案

答案是这取决于浏览器。参见 this example使用 Ranges 测试两种方法。第一次尝试为每个可编辑的 <div> 创建一个范围并将它们全部添加到选择中。第二次尝试创建包含两个可编辑 <div> 内容的单个范围

结果:

  • 在所有浏览器中,用户不可能创建存在于多个可编辑元素中的选择;
  • Firefox 是最宽容的主要浏览器。两种编程方法都有效。
  • Safari 和 Chrome 是最宽松的:这两种方法都不会从多个可编辑元素中选择内容。
  • Opera 11 不支持选择中的多个范围,但支持跨越多个可编辑元素的选定范围。
  • IE 9 之前的版本不支持 DOM 范围或相同 Selection API 与其他浏览器一样,但等效于 TextRange代码不允许从多个可编辑元素中进行选择。

关于javascript - 突出显示/选择具有范围的多个div/contenteditable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4777860/

相关文章:

excel - 从使用的范围偏移设置范围

javascript - ng-if 包装选择的 ng-options 会破坏 ngModel?

javascript - 使用 Webpack、Node、Express、React、React-Router 时的文件大小

html contentEditable document.execCommand 更改选定的不透明度

javascript - 粗体的 ExecCommand 函数定义?

javascript - 禁用新的 block 引用内容可编辑

python - 如何在Python中的函数range()中传递参数

javascript - 用于快速迭代的 jquery range 实用程序(原型(prototype)的 $R 等效项)

javascript - 如何解决将 youtube 链接添加到 iframe 后显示的错误?

javascript - 选择一个 css 选择器来动态设置元素的样式::before