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