我需要 chop 可能包含或不包含 HTML 标记的段落文本。我正在寻找使用直接 jQuery 或 vanilla javascript 执行此操作的最有效方法。您可以在此处查看问题:http://jsfiddle.net/4BzpY/3/
var text = "This <a href=\"\">is</a> some text with a link";
var shortText = jQuery.trim(title).substring(0, 10).split(" ").slice(0, -1).join(" ") + "...";
alert(shortText );
chop 的文本将位于可以动态扩展以显示所有内容的段落元素中。在这种情况下,我不想剥离 HTML 标签,然后仅在完全展开时才显示它们。 HTML 应在折叠和展开状态下保持原样。
最佳答案
如果这是为了在页面上显示,更简洁的方法可能是使用 CSS。给定 HTML:
<span class="truncated">this is truncated text</span>
和CSS:
.truncated {
overflow: hidden;
display: block;
width: 50px;
white-space: nowrap;
text-overflow: ellipsis;
}
这将显示类似于:
this is...
然后您可以在需要时使用 JavaScript 删除 CSS 类。实现示例:http://jsfiddle.net/a8QK4/
关于javascript - chop 可能包含或不包含 HTML 元素的段落文本的最快方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17458410/