--- title: Selection.modify() slug: Web/API/Selection/modify tags: - HTML 编辑 - 参考 - 方法 - 选区 translation_of: Web/API/Selection/modify ---
{{ ApiRef("DOM") }}{{non-standard_header}}

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

规范

浏览器兼容性

{{CompatibilityTable}}
平台 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
支持最低版本 {{CompatUnknown}} {{CompatGeckoDesktop(2)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}§
平台 Android Firefox Mobile (Gecko) Firefox OS IE Phone Opera Mobile Safari Mobile
支持最低版本 {{CompatUnknown}} {{CompatGeckoMobile(2)}} 1.0 {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}

相关链接