首頁 >web前端 >js教程 >如何實現文字寬高自適應div

如何實現文字寬高自適應div

不言
不言原創
2018-11-06 14:42:022582瀏覽

在這裡跟大家分享一篇如何實現文字寬高自適應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(&#39;font-size&#39;).slice(0, -2)) - 1) + &#39;px&#39;
          $(el).css(&#39;font-size&#39;, elNewFontSize)

        resizeText() while el.scrollHeight > el.offsetHeight

這是JavaScript編譯版本:

var autoSizeText;autoSizeText = function() {
  var el, elements, _i, _len, _results;
  elements = $(&#39;.resize&#39;);
  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(&#39;font-size&#39;).slice(0, -2)) - 1) + &#39;px&#39;;
        return $(el).css(&#39;font-size&#39;, elNewFontSize);
      };
      _results1 = [];
      while (el.scrollHeight > el.offsetHeight) {
        _results1.push(resizeText());
      }
      return _results1;
    })(el));
  }
  return _results;};

以上是如何實現文字寬高自適應div的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn