我有一个带有一些嵌套跨度的 contenteditable 元素,可以在其中提供样式。我需要找出在 elemebt 的任何给定偏移处的 css 类是什么。例如,我可能有这样的事情:
<div contenteditable>
<span class"nothing"> </span>
<span class="outer">my <span class="other">name</span> is </span><span class="name">Andrew</span>
</div>
屏幕上的文本将如下所示(使用适当的样式):
my name is Andrew
现在,想象一下 contenteditable 区域可能更大,并且有许多嵌套的 span 元素。在任何给定的文本中给定一个偏移量,我需要能够计算包含它的 css 类。
例如,假设我需要偏移 4 处的 CSS 样式,n
即name
. 我希望结果是:
outer other
一个等效的解决方案是,如果给定一个偏移量(例如4
),我可以计算包装该位置的 html 元素(在这种情况下,它将是:
<span class="other">name</span>
我正在使用 jquery,但没有其他库。我怎样才能轻松计算出这个?
编辑:我之前使用的是 textarea,但这不起作用。我应该使用 contenteditable div 元素。