获得真实的内容大小

问题描述

| 我想知道是否有可能在javascript / jQuery中获取内容的大小(而不是div)。因此,如果框的高度为200像素,但只有一行文本,则内容大小将为12像素左右。 感谢你的帮助     

解决方法

        您可以创建元素的文本内容范围,并使用该范围的属性:
/**
  * @param object o DOMElement
  * @return int|null boundingHeight
  **/
function fx(o)
{
  if(document.createRange)
  {
    var r = document.createRange();
        r.selectNodeContents(o);
    return r.getBoundingClientRect().height;
  }
  else
  {
    var r = document.body.createTextRange();
        r.moveToElementText(o)
    return r.boundingHeight;
  }
  return null;
}
http://jsfiddle.net/doktormolle/wArMN/     ,        如果您引用的是字体大小,则可以使用以下命令进行检查:
$(\'div\').click(function()
{
    alert($(this).css(\'font-size\'));
});
演示