Selection.modify()
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2020年1月.
非标准: 该特性尚未标准化。我们不建议在生产环境中使用非标准特性,因为它们在浏览器中的支持有限,且可能发生变化或被移除。不过,在没有标准选项的特定情况下,它们可以作为合适的替代方案。
Selection.modify() 方法可以通过简单的文本命令来改变当前选区或光标位置。
语法
modify(alter, direction, granularity)
参数
- alter
-
改变类型。传入
"move"来移动光标位置,或者"extend"来扩展当前选区。 - direction
-
调整选区的方向。你可以传入
"forward"或"backward"来根据选区内容的语言书写方向来调整。或者使用"left"或"right"来指明一个明确的调整方向。 - granularity
-
调整的距离颗粒度。可选值有
"character"、"word"、"sentence"、"line"、"paragraph"、"lineboundary"、"sentenceboundary"、"paragraphboundary"、"documentboundary"。
备注:
Gecko 不支持 "sentence", "paragraph", "sentenceboundary", "paragraphboundary" 和 "documentboundary". Webkit 和 Blink 支持。
备注:
从 Gecko 5.0 开始,不管是不是浏览器的默认行为,"word" 颗粒度不再包括单词后面的空格。这让这个行为变得更加稳定,这也和之前的 Webkit 保持一致,然而不幸的是他们最近修改了这个默认行为。
示例
使当前选区往语言书写方向扩大一个单词(word)的选择范围
var selection = window.getSelection();
selection.modify("extend", "forward", "word");
规范
无。
浏览器兼容性
Loading…
参见
- 此方法所属的接口:
Selection。