Selection.modify()

非标准
该特性是非标准的,请尽量不要在生产环境中使用它!

Selection.modify() 方法可以通过简单的文本命令来改变当前选区或光标位置。

语法

sel.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");

规范

浏览器兼容性

平台 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
支持最低版本 ? 4.0 (2) ? ? ?§
平台 Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
支持最低版本 ? 4.0 (2) 1.0 ? ? ?

相关链接

文档标签和贡献者