除了用html元素包装每个字符之外,javascript/jquery/etc中是否有一种方法可以判断元素中的哪个字母被单击?
假设你有一个标题-- "<h1>Happy</h1>"
--你怎么知道是哪个字母被点击了,也就是说,用户点击了第二个p或者a--没有标签包装每个字母。
我发现的所有解决方案都建议用html元素(大概是span)包装每个字母,但这需要一些非常可怕的html (即使您自动生成它) --即<h1><span id="letter00>H</span><span id="letter02">a</span><span id=letter03>p</p>...etc...</h1>
。当然,在渲染引擎绘制字母位置时,还可以记录它们的位置,然后将它们与视图中的单击相关联。
发布于 2018-03-15 16:17:05
我认为,如果使用<input type="text">
,则有一个selectionStart属性,该属性包含光标所在位置的字符索引。使用html,您可以修改文本框以删除边框等等,这样看起来就不像文本框了。selectionStart和selectionEnd将帮助您了解是否有任何文本也被高亮显示。
https://stackoverflow.com/questions/49304117
复制相似问题