我正在创建一个不使用JQuery的AngularJS网站。在指令中,传递的值是
EngagementApp.directive('movingAside', function() {
return {
restrict : 'A',
link : function(scope, element, attributes) {
}
}
});
html看起来像:
<div class="aside" moving-aside>...Content...</div>
执行element.clientHeight之类的操作会返回未定义的内容。
如何在不使用JQuery和AngularJS函数的情况下获取元素的属性(高度,宽度,偏移量等)?
答案 0 :(得分:14)
使用element[0].clientHeight | offsetHeight | scrollHeight
element[0]
使您可以访问JQLite选择器集合中的第一个DOM元素,而clientHeight
是DOM元素的内置属性。
EngagementApp.directive('movingAside', function() {
return {
restrict : 'A',
link : function(scope, element, attributes) {
console.log(element[0].clientHeight);
}
}
});
根据您的目标,您可以获得3种不同的高度:
答案 1 :(得分:0)
尝试angular.element(element).css('height')