在这里给大家分享一篇如何实现文本宽高自适应div的文章,有需要的朋友可以参考一下。
在尝试了几个JavaScript代码段和用于将文本拟合到div中的库之后,我感到有些难受,因为这些都没有处理DIV的“高度”,文本可能会溢出......
所以我在CoffeeScript中编写了这个简单的函数,它测试文本是否溢出div并且它将减小它的大小直到它适合!
函数查找带有.Resig类标记的元素,并仅调整它们的大小。autoSizeText = ->
elements = $('.resize')
console.log elements return if elements.length < 0
for el in elements do (el) ->
resizeText = ->
elNewFontSize = (parseInt($(el).css('font-size').slice(0, -2)) - 1) + 'px'
$(el).css('font-size', elNewFontSize)
resizeText() while el.scrollHeight > el.offsetHeight
这是JavaScript编译版本:var autoSizeText;autoSizeText = function() {
var el, elements, _i, _len, _results;
elements = $('.resize');
console.log(elements);
if (elements.length < 0) {
return;
}
_results = [];
for (_i = 0, _len = elements.length; _i < _len; _i++) {
el = elements[_i];
_results.push((function(el) {
var resizeText, _results1;
resizeText = function() {
var elNewFontSize;
elNewFontSize = (parseInt($(el).css('font-size').slice(0, -2)) - 1) + 'px';
return $(el).css('font-size', elNewFontSize);
};
_results1 = [];
while (el.scrollHeight > el.offsetHeight) {
_results1.push(resizeText());
}
return _results1;
})(el));
}
return _results;};