Javascript Internet Explorer GetClientries绝对定位元素

Javascript Internet Explorer GetClientries绝对定位元素,javascript,internet-explorer,highlight,internet-explorer-11,Javascript,Internet Explorer,Highlight,Internet Explorer 11,我目前在IE11中遇到了一个文本选择问题(尽管在以前的IEs中也出现过)。我的目标是让文本选择在返回getclientracts的地方工作。我有一个简单的设置。我有一个容器div,在该div中我放置了两个跨度: <div onmouseup="mouseup()" id="container"> <div class="span1">Span 1</div> <div class="span2">Span 2</div>

我目前在IE11中遇到了一个文本选择问题(尽管在以前的IEs中也出现过)。我的目标是让文本选择在返回getclientracts的地方工作。我有一个简单的设置。我有一个容器div,在该div中我放置了两个跨度:

<div onmouseup="mouseup()" id="container">
    <div class="span1">Span 1</div>
    <div class="span2">Span 2</div>
</div>
在chrome上,如果您尝试从span 1到span 2选择文本,它将发出长度为3的警报,这是我想要的,因为这样可以让我知道文本选择的边界框在哪里。在internet explorer上,尽管它始终返回0。如果我只在一个跨距内选择文本,它将工作,但一旦您转到多个跨距,它就会失败


这里有一个完整的设置:看起来你不能那样做。如果你让所有的东西都浮动,然后用上/左边距定位,它就会工作。这是两个跨度的css

span{
    float: left;
    margin-bottom: -100%;
    margin-right: -100%;
}

更新的fiddle:

这是一篇老文章,但鉴于这曾经是一个解决方案,它不再是IE和Edge最新版本的解决方案。目前正在使用IE11.3和Edge 44。@chitgoks我看到了你对github问题的评论。我不再使用pdf.js了,所以我无法探究这个问题。祝你好运。如果你真的找到了解决方案,请告诉我,我会在下面更新我的答案。如果有的话,我会的。但是我不擅长css。我想如果有人知道了,我会发布解决方案。
span{
    float: left;
    margin-bottom: -100%;
    margin-right: -100%;
}