css - 在 AngularJS 中调整元素高度

标签 css angularjs html

我正在使用 AngularJS(非常新)。我遇到了一个挑战,如果 textarea 值太大,我必须使其可滚动以及它周围的边框,否则我必须删除边框和滚动。我尝试添加指令但无法使其工作。

如果有任何解决方法,请告诉我。感谢您抽出时间提供帮助。

更新:

angular.module('myApp')
.directive('removeBorder', function () {
return {
  restrict: 'A',
  link: function (scope, element, attrs) {
    if (element[0].clientHeight < element[0].scrollHeight) {
      console.log(element.clientHeight);
      console.log(element.scrollHeight);
      console.log('ELEMENT: ' + element[0]);
      angular.element(element[0]).removeClass('scroll');
    }
  }
};
});

最佳答案

我用 nativeJS 和 angularJS 和原生 JS 给你举了个例子。只需检查 Elements clientHeightscrollHeight 属性即可使其正常工作。

angularJS 指令

angular.module('docsSimpleDirective', [])
.controller('Controller', ['$scope', function($scope) {}])
.directive('removeBorder', function() {

  return { 
    restrict: 'A', 
    link: function (scope, element, attrs) {
      if (element[0].clientHeight >= element[0].scrollHeight) { 
        console.log(element[0].clientHeight); 
        console.log(element[0].scrollHeight);  
        angular.element(element[0]).addClass('no-scroll'); 

      }
    }}; 
});

原生 JS - Plunker

function hasScrollbar(elemId) { 
    elem = document.getElementById(elemId); 
    if (elem.clientHeight < elem.scrollHeight) {
        alert("The element #" + elemId + " has a vertical scrollbar!"); 
    } else {
        alert("The element #" + elemId + " doesn't have a vertical scrollbar."); 
        elem.style.border= "0";
    }
}

应自动设置可滚动。或者使用 CSS:

    textarea { overflow-y:scroll; }

关于css - 在 AngularJS 中调整元素高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30126429/

相关文章:

html - 如何使用 Bootstrap 在另一个 DIV 的左侧显示 DIV

JavaScript 表单验证无法正常工作

javascript - 使用 Javascript 过滤 xml 文件

html - W3C 验证器发现不存在的错误?

jquery - "Dropdown Toggle"上的 Twitter Bootstrap "btn btn-block btn-lg btn-primary"?

css - 内联 block div 元素不环绕其他内联 block 元素

html - 如何将空白的宽度保持在正常的单个字符

javascript - 带有 ng-scroll 和 ng-repeat 的 AngularJS

javascript - Angular : $scope. $watch($attr.ngModel) 仅当验证器在指令中返回 true 时才工作

javascript - 如何在柱形图中图表区中间显示 "No Data"消息