首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于getBoundingClientRect,.getSelection,.getRangeAt的困惑

关于getBoundingClientRect,.getSelection,.getRangeAt的困惑
EN

Stack Overflow用户
提问于 2015-09-01 10:29:56
回答 1查看 328关注 0票数 0

我使用.getSelection获取选定的文本,然后使用.getRangeAt(0),然后使用.getBoundingClientRect()获取窗口的位置。

下面是我的工作代码。

代码语言:javascript
复制
function getText(){
  if(window.getSelection) {
    return window.getSelection();
  } 
}

$("#textArea").mouseup(function(){
    var selection = getText();
    var oRange = selection.getRangeAt(0);
    var oRect = oRange.getBoundingClientRect();

    var left = oRect.left
    var top = oRect.top
}

我的问题是:

为什么我“不能”直接用喜欢?

代码语言:javascript
复制
mySelectedText.getSelection().getBoundingClientRect();

为什么我要使用.getRangeAt()

这三种功能的区别是什么?

  1. .getSelection
  2. .getRangeAt
  3. .getBoundingClientRect
EN

回答 1

Stack Overflow用户

发布于 2015-09-01 11:52:00

getBoundingClientRect是任何元素的偏移量,getSelection和getRangeAt与插入符号一起工作,而不返回它们返回选择对象和范围对象的元素。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32329317

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档