javascript - 如何根据列的宽度换行文本

标签 javascript jquery css

您好,我有一个列宽不同的表格,如下所示

${"#goldBarList"} table tr td:first-child{width:5%;}
${"#goldBarList"} table tr td:first-child+td{width:5%;}
${"#goldBarList"} table tr td:first-child+td+td{width:6%;}
${"#goldBarList"} table tr td:first-child+td+td+td{width:7%;}
${"#goldBarList"} table tr td:first-child+td+td+td+td{width:7%;}
${"#goldBarList"} table tr td:first-child+td+td+td+td+td+td+td{width:11%;}
${"#goldBarList"} table tr td:first-child+td+td+td+td+td+td+td+td{width:11%;}
${"#goldBarList"} table tr td:first-child+td+td+td+td+td+td+td+td+td{width:11%;}
${"#goldBarList"} table tr td:first-child+td+td+td+td+td+td+td+td+td+td{width:11%;}
${"#goldBarList"} table tr:first-child{read-only:true; font-size:90%; font-weight:bold;

}

我用过

${"#goldBarList"} table{
table-layout:fixed;
word-wrap:break-word;
}

固定表格并将文本换行在单元格中。 但问题是它没有根据列的宽度换行文本。 表示宽度为 5% 和宽度为 11% 时,它会将宽度超过 8 个字符的文本换行。但我想根据列宽包装文本。如何做到这一点...?

最佳答案

如果你想在 javascript 中换行,

var getFormattedString  = function (str, length){
    if(str == null || str == '') return '';
    return (str.length>length)?(str.substr(0,length) + "...") : str;
}

像下面这样调用上面的函数。

var name = "This is the long long long text";
$(selector).attr('title', name).html(getFormattedString (name, 10));

元素的 title 属性将显示默认工具提示。

关于javascript - 如何根据列的宽度换行文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14213964/

相关文章:

javascript - 在javascript中查找两个日期时间之间的差异

javascript - 使用 jquery 检查所有复选框

javascript - 迭代整个数组的标准 JavaScript 实践?

javascript - jQuery 一个对话框有多个 "opener"按钮

jquery - 使用JQuery根据浏览器高度和另一个元素的高度设置元素的边距

javascript - 我无法在 Javascript 中使用我的函数

javascript - 嵌套可排序无法正确折叠/展开

javascript - 想要更改使用 <object> 加载的 SVG 的颜色

css - 使搜索栏更宽

css - Ionic 应用程序需要哪种字体文件类型