【发布时间】:2016-03-14 12:53:51
【问题描述】:
所以我有一个数组,它根据显示的图表获取多个字符串。现在我正在寻找这个数组中最长的字符串。现在这工作没有问题。
代码如下:
var textLengthArray = [];
domContainer.find(" g > .element1 > .element2> text").each(function () {
textLengthArray.push($(this).text());
});
var longestString = textLengthArray.sort(function (a, b) {
return b.length - a.length;
})[0];
现在我想根据最长的字符串更改那些“文本”元素的字体大小。所以如果数组中最长的字符串超过 10 个字符,则 font-size 应更改为“x px/pt”。
我的第一个想法是这样的:
if (longestString >= 10){
domContainer.find(" g > .brm-y-direction > .tick > text")
.style('font-size', '4pt')
};
我也尝试过类似的方法:
if (longestString >= 2){
$("g.brm-y-direction.tick").find("text").css("font-size", "4pt") ; };
但这些解决方案根本不起作用。那么谁能告诉我如何通过javascript解决这个问题?
生成的 HTML 文本如下所示:
<g class="tick" transform="translate(0,74)" style="opacity: 1;">
<line x2="-6" y2="0"></line>
<text dy=".32em" x="-12" y="37" style="text-anchor: end;">sampletext</text></g>
【问题讨论】:
-
能否包含您尝试设置字体大小的元素的 HTML 示例?
-
你可能想添加一个 jQuery 标签。
标签: javascript jquery css styles