window方法:getSelection()

getSelection()方法

getSelection()方法可以返回一个Selection对象,用于表示用户选择的文本范围或插入符的当前位置。

getSelection()方法语法

selection = window .getSelection();

一个Selection对象。

当转换为字符串时,通过附加空字符串("")或使用Selection.toString(),此对象将返回所选文本。

getSelection()方法示例

function foo() {
    var selObj = window.getSelection(); 
    alert(selObj);
    var selRange = selObj.getRangeAt(0);
    // do stuff with the range
}

笔记

Selection对象的字符串表示形式

在JavaScript中,当一个对象被传递给期望一个字符串(如:window.alert(),或document.write())的函数时,将调用该对象的toString()方法并将返回的值传递给该函数。当它与其他函数一起使用时,当它实际上是具有属性和方法的对象时,这可以使对象看起来像是一个字符串。

在上面的示例中,在将它传递给window.alert()时会自动调用selObj.toString()。但是,如果没有该属性或方法,直接在Selection对象上尝试使用JavaScript String属性或方法(如length或substr)将导致错误,如果有,则可能会返回意外结果。要将Selection对象用作字符串,请直接调用其toString()方法:

var selectedText = selObj.toString();
  • selObj是一个Selection对象。
  • selectedText 是一个字符串(选定的文本)。

相关对象

注意你如果调用Document.getSelection()也很有用,它的工作方式相同。

HTML输入提供了更简单的帮助API,用于处理选择(请参阅参考资料HTMLInputElement.setSelectionRange())。

注意selection和focus之间的区别。Document.activeElement返回聚焦元素。

规范

规范 状态 注释
Selection API 
该规范中'Window.getSelection()'的定义。
Working Draft
新规范
HTML编辑API 
该规范中“Window.getSelection()”的定义。
Editor's Draft
初步定义

浏览器兼容性

新的兼容性表格处于测试阶段

电脑端 移动端
Chrome
Edge
Firefox
Internet Explorer
Opera
Safari
Android webview Chrome for Android
Edge Mobile Firefox for Android
Opera for Android
iOS Safari
基本支持 支持 支持 支持 支持:9 支持 支持 支持 支持:55 支持:37 支持:5.1
以上内容是否对您有帮助:

您可能还喜欢:

在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号

意见反馈
返回顶部