css - 获取div angular js的高度

标签 css angularjs

我试图在 angularjs 中获取一个 div 的高度,但它只返回初始值并且从不更新:

vm.summaryHeight = $(".history-log-container").height();
console.log(vm.summaryHeight);//returns 0 and then never logs again.

如何在更新时获取此 div 的高度?

我试过这个:

 link: function ($scope, element, attrs) {
    //console.log(element.height());
    $scope.$watch(function(){
      return element.height();
    }, function(oldVal, newVal){
     //returns the initial values then nothing else
      console.log(arguments);
    })
  }

最佳答案

正如其他人所说,除非您另有说明,否则该值将被取一次。尝试类似的东西;

$(document).resize(function(){
  // Your code here
});

如果您的窗口大小更改会影响目标元素的高度,那么无论何时调整文档大小时,该值都将被重新获取。如果您要定位元素而不是文档,这也可能有效;

$('.history-log-container').resize(function(){
  // Your code here
});

但您必须检查一下 - 我通常只在一个文档大小调整函数中设置所有窗口响应大小。

关于css - 获取div angular js的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36162605/

相关文章:

javascript - AngularJS 使用 selectize 和 ng-repeat 设置多选下拉列表的值

javascript - 正则表达式验证 AngularJs

javascript - 如何触发模态的点击功能

javascript - 这些空 anchor 标签是从哪里来的?

java - 按钮的 css 样式不起作用

css - 使用 CSS 的 3 面金字塔?

angularjs - ag-grid列搜索不适用于对象作为单元格值

angularjs - 为 AngularJS 动态插入 Google 标签 (gtag.js) 跟踪 ID

javascript - AngularJS 中的单元测试 - 模拟服务和 promise

javascript - 如何防止在另一个页面上的导航上发生点击事件