我有一个字符串 - 项目描述(作为对象的一部分)来自用户表单提交,显示在报告页面上。如果行号超过24,我想在新页面上显示字符串的其余部分。我最初的想法是根据字符来剪切它,但这不能精确地完成,就像提交表单时进行换行一样,无法计算字符,因为我们不知道是否换行是在行的中间或末尾或任何地方进行的。我不知道有什么办法可以解决?
如何根据行数剪切字符串?
这是我到目前为止所做的:
function countLines (el) {
let projectDetails = $rootScope.report.description;
var el = document.getElementById(el);
var divHeight = el.offsetHeight
var lines = divHeight / 17;
//console.log("Lines counted: " + lines);
if(lines > 24) {
$scope.secondDescriptionPage = true;
$scope.projectDetailsTextFirstPart = // this should be calculated
//$scope.projectDetailsTextSecondPart = // this should be calculated )
}
}
最佳答案
使用 -webkit-line-clamp
CSS 属性,您可以将文本剪切一定数量的行。请参阅MDN了解详情。但它在 IE11 中不起作用。
关于javascript - 如何在特定行号之后剪切字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60210309/