css - 在 AngularJS 中不用 JQuery 获取 HTML 元素高度

标签 css angularjs

我越来越熟悉 AngularJS。我正在努力做到尽可能“纯洁”。出于这个原因,我试图避免包括 jQuery。但是,我在获取 HTML 元素的高度时遇到了挑战。目前,我正在尝试以下操作:

angular.module('myModule', [])
  .directive('myDirective', function() {
    return {
        restrict: 'A',
        link: function(scope, element) {
            console.log(element.css('height'));
        }
    };
  })
;

然而,当这段代码被执行时,一个空行被写入控制台。我正在尝试显示元素的高度。有没有办法在不使用 jQuery 的情况下在 AngularJS 中执行此操作?

谢谢!

最佳答案

看起来这是正常工作的,如果你使用会得到相同的结果:

element.style.height

由于没有在元素上设置内联样式或 CSS 高度,因此显示空行。您可以直接获取 HTML 元素的高度,而不是依赖于样式。

console.log(element[0].offsetHeight);

http://plnkr.co/edit/03YWwjBjYpid4fVmDxlM?p=preview

How do I retrieve an HTML element's actual width and height?

关于css - 在 AngularJS 中不用 JQuery 获取 HTML 元素高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21895732/

相关文章:

jquery - 删除 css 边界框轮廓

css - 如何创建一个自动调整大小以适应 iOS 邮件的 Rails 电子邮件用户邮件程序 View ?

javascript - 基于JSON属性的Angular img切换

出现滚动条时,css 伪元素(tr 外的三 Angular 形)位置未对齐

javascript - Angular View 不持久

javascript - Angular ui.router 默认页眉页脚

css - 背景图像允许溢出输入按钮

css - 使用 CSS3 动画打破了页面中所有元素的固定背景定位

javascript - 如何将html表单的内容保存为.html页面

asp.net-mvc-4 - 如何使 Angularjs $http.delete 和 asp.net mvc4 缩小一起工作?