使用 CSS 样式溢出时如何访问 DIV 中显示的实际文本:隐藏?

Eri*_*air 7 html javascript css text overflow

我的页面上有以下内容 DIV,它显示动态文本:

<div id="someContent">
</div>
Run Code Online (Sandbox Code Playgroud)

它使用以下 CSS 来切断附加文本:

#someContent {
    height: 200px;
    width: 200px;
    overflow: hidden;
}
Run Code Online (Sandbox Code Playgroud)

如果我将此文本加载到 DIV 中:

“Lorem ipsum dolor 坐 amet,consectetuer adipiscing 精英。Praesent aliquam,justo convallis luctus rut​​rum,erat nullafermentum diam,在 nonummy quam ante ac quam。Maecenas urna purus,fermentum id,molestie,commodo portitor。 lacus. Quisque ornare risus quis ligula. Phasellus tristique purus a augue condimentum adipiscing. Aenean sagittis. Etiam leo pede, rhoncus venenatis, tristique in, vulputate at, odio. Donec et potenti

...CSS 仅导致以下文本显示在 DIV 中:

“Lorem ipsum dolor 坐 amet,consectetuer adipiscing 精英。Praesent aliquam,justo convallis luctus rut​​rum,erat nullafermentum diam,在 nonummy quam ante ac quam。Maecenas urna purus,fermentum id,molestie,commodo portitor。 lacus. Quisque ornare risus quis ligula. Phasellus tristique purus a augue"

这按预期工作。

但是,我想知道是否有某种方法可以使用 JavaScript 访问显示的文本。当我尝试访问innerHTMLDIV的属性时,它返回最初加载到 DIV 中的整个文本。

<script type="text/javascript">
    alert(document.getElementById("mainArticleContent").innerHTML);
</script>
Run Code Online (Sandbox Code Playgroud)

我的最终目标是用省略号(“...”)替换修剪后的内容中的最后一个单词。我想我可以在 JavaScript 中做到这一点,这样它就可以在所有浏览器中显示,而不仅仅是 IE,就像 CSS 属性一样text-overflow: hidden

有任何想法吗?这可能吗?

Dav*_*e L 3

我认为你要求做的事情不可能用 javascript 实现。

或者,为什么不在服务器端截断特定字符数的文本呢?根据您选择的字体,您可能无法对页面上显示的 div 大小进行所需的控制,但它应该可以解决您的问题。

编辑:

看一下这个以获得自动 CSS 省略号。有一些警告,它看起来非常特定于浏览器,但这是做你想做的事情的另一种方法。