我希望我说的正确。我正在使用jQuery函数根据文本的长度在单独的跨度中调整文本大小。到目前为止,还不错,但是它是所有值的总和,我需要它逐个检查它们,并将调整大小规则基于最长的值。问题是所讨论的跨度是使用for循环渲染的,因此也难怪它会组合这些值。一次显示的跨度不会超过三个。
有人可以帮忙吗?
<script type="text/javascript">
var $quote = $(".check_in_footer .last_check.units");
var $numWords = $quote.text().length;
jQuery(document).ready(function($) {
alert($numWords);
$(function() {
if (($numWords >= 1) && ($numWords < 6)) {
$quote.css("font-size", "400%");
}
else if (($numWords >= 7) && ($numWords < 8)) {
$quote.css("font-size", "600%");
}
else {
$quote.css("color", "#ff0000");
}
});
});
最佳答案
$(".check_in_footer .last_check.units").each(function () {
var $numWords = $(this).text().length;
if (($numWords >= 1) && ($numWords < 6)) {
$(this).css("font-size", "400%");
}
else if (($numWords >= 7) && ($numWords < 8)) {
$(this).css("font-size", "600%");
}
else {
$(this).css("color", "#ff0000");
}
});
并且您需要删除代码的前两行(在打开脚本标签的正下方)。
我没有检查其余的代码,只是实现了循环逻辑。