获取输入或textarea元素内匹配字符串/范围的坐标/ BoundingClientRect

问题描述

我正在努力寻找准确确定文本在textarea或输入HTML元素内的位置的方法,类似于GitHub通过其内联下拉列表(也是textarea)设法实现的位置,但是我是完全为我将如何实现这一目标而烦恼。

理想情况下,希望实现某种类似于DOMRect方法的返回Range.getBoundingClientRect()对象的方法,因为我需要匹配文本的x和y坐标以及宽度和高度放置我想在项目中放置的下拉菜单。

将其用于我正在开发的chrome扩展程序上,该扩展程序必须能够在任何输入和文本区域上运行,以便在输入时直接在“ /”字符下方显示下拉菜单。否则,我将仅使用带有try { const request = { spreadsheetId: spreadsheetId,resource: { requests: [{ sortRange: { range: { sheetId: 959061457,startRowIndex: 1,endRowIndex: 1000,startColumnIndex: 0,endColumnIndex: 6 },sortSpecs: [{ sortOrder: 'DESCENDING',dimensionIndex: 2 }] } }],},auth: client,}; await sheets.spreadsheets.batchUpdate(request) } catch (error) { console.log(error) } 的div来实现此目的。

任何想法将不胜感激!

enter image description here

解决方法

我在GitHub上找到了这个text-area-caret回购,看来它应该可以通过一些小的调整来实现我想要的功能(如果有任何调整,或者如果没有实现,将进行必要的调整以进行报告我想要)。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...