Javascript 仅显示段落的前两行

Javascript 仅显示段落的前两行,javascript,html,Javascript,Html,我需要在两行上显示一些文本,如果文本太长,则添加一些“…” 例如: This is some long text and we need to show it on only two lines. 这是一些长文本,我们只需要在两行上显示它。 => 这有点长 文本,我们需要。。。 文本必须使用标记显示。文本溢出在某些浏览器上有效-> 或 这里的答案很好-> 或 为了限制两行的显示->jQuery插件运行良好CSS3解决方案=没有Javascript解决方案 CSS3支持(即更早支持它——其他人也应

我需要在两行上显示一些文本,如果文本太长,则添加一些“…”

例如:

This is some long text and we need to show it on only two lines. 这是一些长文本,我们只需要在两行上显示它。 =>

这有点长 文本,我们需要。。。
文本必须使用
标记显示。

文本溢出在某些浏览器上有效->

这里的答案很好->

为了限制两行的显示->jQuery插件运行良好

CSS3解决方案=没有Javascript解决方案 CSS3支持(即更早支持它——其他人也应该支持的罕见事情之一)
文本溢出:省略号样式设置,自动向溢出文本添加省略号。可以看到浏览器支持

CSS2.1=没有Javascript解决方案 是CSS唯一的解决方法,这可能不是你想要的,但可以很容易地进一步增强。它只是在每一段的末尾加上省略号

CSS2.1=只是一点点Javascript解决方案 上面的例子也可以是这样的,带有
:after
的CSS类将只添加到内容超过元素维度的段落中。使用一点Javascript就可以很容易地做到这一点。问题是省略号的位置总是与右边齐平。如果这不是一个问题,那么这是一个非常好的方法

没有CSS=完整的Javascript解决方案 还有一种Javascript方法可以实现这一点,并且在上有很好的描述。它描述了使一行充满文本的算法,但在您的案例中,可以实现类似的方法来填充两行,当超过时,添加省略号

我的建议-结果 由于Firefox是唯一一款在第7版之前不支持
文本溢出的浏览器(换句话说,直到最近),我建议您使用CSS3解决方案

为什么?Firefox浏览器会自动更新(默认情况下),因此很可能只有一小部分用户看不到省略号。直到他们的浏览器升级。如果他们明确禁用了自动浏览器更新,他们可能会手动执行此操作,并且迟早也会得到它。

var string=“这是一些长文本,我们只需要在两行上显示它。”.split(“”);
var string = "This is some long text and we need to show it on only two lines.".split(" ");
var first_line = string.slice(0,5).join(" ");
var second_line = string.slice(6,10).join(" ");

var display_string = first_line + "<br />" + second_line;
if(string.length > 10) display_string += "...";
$("#text").html(display_string);
var first_line=string.slice(0,5).join(“”); var second_line=string.slice(6,10).join(“”); 变量显示字符串=第一行+“
”+第二行; 如果(string.length>10)显示_string+=“…”; $(“#text”).html(显示字符串);

当然有更好的方法,但这至少会让你开始。每行显示5个单词,如果超过10个单词,则添加和省略号。寻找一个更好的解决方案,但你可以使用它,直到你找到一个

您可以在渲染时进行切片并将其与点一起嵌入,并使用css宽度使其两行

.js文件

var text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor"
<p>    <%= text.slice(0,30)+" ..." %>    </p>
.ejs文件

var text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor"
<p>    <%= text.slice(0,30)+" ..." %>    </p>


问题?“我太老了”对“巨大的脊椎动物袭击了温彻斯特的祖母”…肯定。我只提供了一个有效的解决方案,而不是最好的解决方案。欢迎来到Stack Overflow,这个问题被标记为
javascript
,因此它正在寻找一个简单的javascript答案。请注意问题上的标记语言,以便您能够回答问题。