我正在创建一个不使用 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 函数的情况下获取元素的属性(高度、宽度、偏移量等)?
最佳答案
使用 element[0].clientHeight |偏移高度 |滚动高度
element[0]
使您可以访问 JQLite 选择器集合中的第一个 DOM 元素,而 clientHeight
是 DOM 元素的内置属性。
EngagementApp.directive('movingAside', function() {
return {
restrict : 'A',
link : function(scope, element, attributes) {
console.log(element[0].clientHeight);
}
}
});
根据您的追求,您可以获得 3 种不同的高度:
关于javascript - AngularJS 不用 JQuery 获取元素属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18852687/