如何获取在用户';什么是浏览器?(Jquery/javascript) 这确实是一篇很长的文章。知识产权是一种权利,是一种精英的权利,是劳动和财富的暂时性权利。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡

如何获取在用户';什么是浏览器?(Jquery/javascript) 这确实是一篇很长的文章。知识产权是一种权利,是一种精英的权利,是劳动和财富的暂时性权利。但是,在最低限度上,我们需要一个实验室来进行日常工作。两人或两人在一个无教区的房间里互相指责。除偶尔因疏忽而死亡外,不得因疏忽而导致动物死亡,javascript,jquery,Javascript,Jquery,在web上呈现示例文本时,每个字符的位置都会根据用户的设置而更改。(例如,根据用户使用的浏览器以及页面放大的程度,行划分是不同的-放大任何包含大量文本的网页,您将看到这些变化) 但是,我尝试制作的应用程序必须使各个角色的位置正常工作。 因此,我需要相对于整个网页的位置和/或其他位置(例如相对于段落起点的位置) 顺便说一句,我更喜欢Jquery解决方案……但如果不能使用Jquery,我也可以使用其他库/工具的解决方案 谢谢:) p、 s:对不起,我的英语不好。。。如果你不明白这个问题,那可能是我的

在web上呈现示例文本时,每个字符的位置都会根据用户的设置而更改。(例如,根据用户使用的浏览器以及页面放大的程度,行划分是不同的-放大任何包含大量文本的网页,您将看到这些变化)

但是,我尝试制作的应用程序必须使各个角色的位置正常工作。 因此,我需要相对于整个网页的位置和/或其他位置(例如相对于段落起点的位置)

顺便说一句,我更喜欢Jquery解决方案……但如果不能使用Jquery,我也可以使用其他库/工具的解决方案

谢谢:)

p、 s:对不起,我的英语不好。。。如果你不明白这个问题,那可能是我的错


我想到了使用span标记和.offset()-感谢您提供的快速解决方案:)

但是我想知道除了使用span标记之外,是否还有其他方法…也许是某种空标记,它除了包含一个或多个字符之外什么都不做

如果我使用CSS或其他东西,这可能吗


无论如何,再次感谢:)

我认为使用上述HTML无法实现这一点。您可以使用方法获取
元素的位置。但是,除非你将单个字符放在不同的容器中,否则你将无法获得它们的位置,我认为这不是一个理想的解决方案。

嗯,这不是一个很好的解决方案,但是。。。也许如果你把文本分解成单独的标签,这会有用吗?例如

<p> this is a very long text indeed. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. </p>    
然后你可以得到第n个字符的位置

span.word { white-space: nowrap; }

这里的
n
是基于零的,因此在上面的代码中,“”是第0个字符,而“t”是第一个字符。

我可以提供一个文本答案,说明您可以做些什么,但作为一个跨浏览器的实现需要做很多工作,我不知道足够的细节来提供可行的代码

首先,选择要搜索的字符(我假设需要一个范围对象,或者对段落内容进行文本搜索):

Lorem ipsum dolor sit amet

然后用一个跨度将其包围:

Lorem ipsum dolor sit amet

然后选择跨度并检查其偏移:

var spanOffset=$('span').offset()


当然,您可能希望向span中添加一个类,并确保它具有尽可能中性的样式。

我尝试了带有标记的解决方案。。。但是这个解决方案改变了文本的宽度——这不是我想要的。(或者可能我的firefox做得不对…)但是无论如何,谢谢你给我这个想法:)嗯。你确定
标记之间没有空格吗?
<p id="para1">
    <span> </span>
    <span class="word"><span>t</span><span>h</span><span>i</span><span>s</span></span>
    <span> </span>
    <span class="word"><span>i</span><span>s</span>
    <span> </span>
    ...
</p>
span.word { white-space: nowrap; }
var characters = $("#para1 span:not(.word)");
var nthPosition = characters.eq(n).offset();