javascript - 如何获取以下语句的高度 - angular.element ('<div>content</div>' )?

标签 javascript css angularjs

如何获取以下语句的高度 - angular.element('content') ?

我不想放在DOM上,直接获取高度。我可以这样做吗? 如果我必须先将它放在 DOM 上,我该如何获取它?

最佳答案

I don't want to place it on the DOM, just get the height.

你看,这是一回事,我们不能独立于 DOM 谈论内容的高度,因为赋予文本尺寸的是它是 DOM 的一部分,应用了一些样式,受到影响其他元素可能等等。

因此,如果您需要获取文本的高度,您需要执行以下操作:

  1. 创建空元素,例如div 并在其中附加文本内容:

    var div = angular.element('<div>content</div>');
    
  2. 将此元素附加到 DOM 中,可能设置使其“不可见”的样式

    div[0].style.cssText = 'position: absolute; top: -1000px;';
    document.body.appendChild(div[0]);
    
  3. 计算高度

    var height = div[0].offsetHeight;  
    
  4. 如果您不再需要该元素,请将其删除。

    document.body.removeChild(div[0]);
    

关于javascript - 如何获取以下语句的高度 - angular.element ('<div>content</div>' )?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27892602/

相关文章:

javascript - 如何使用在身份验证 header 中保存为 httpOnly cookie 的访问 token ?

css - 如何使 px 大小响应?

javascript - AngularJS/Jade 错误 : Argument 'MyController' is not a function, 未定义(平均值)

javascript - 如何选择通过 jQuery load() 函数加载的元素?

javascript - 如何在带有 debounce 的方法中访问事件对象 - Vue

javascript - 如何制作多列无序列表?

javascript - angularjs本地存储无法正常工作?

javascript - ng-table angularJS 的实现

javascript - 使用 jquery 按名称属性禁用单选按钮

image - 用于在 Internet Explorer 中缩放图像的最大宽度和最大高度