Javascript 在Angularjs中,有没有一种方法可以获取指令中子元素的宽度和高度
我使用带有模板的angularjs指令将div附加到元素。CSS使用“最大宽度”自动设置其宽度样式。如何找到此宽度以便进一步处理?我试过:Javascript 在Angularjs中,有没有一种方法可以获取指令中子元素的宽度和高度,javascript,jquery,css,angularjs,angularjs-directive,Javascript,Jquery,Css,Angularjs,Angularjs Directive,我使用带有模板的angularjs指令将div附加到元素。CSS使用“最大宽度”自动设置其宽度样式。如何找到此宽度以便进一步处理?我试过: for(var i=0; i<numchild; i++){ angular.element(element.children()[i]).clientWidth } for(var i=0;iconsole.log(angular.element(element.children()[i])[0].clientWidth); 是你想要的,但
for(var i=0; i<numchild; i++){
angular.element(element.children()[i]).clientWidth
}
for(var i=0;iconsole.log(angular.element(element.children()[i])[0].clientWidth);
是你想要的,但是你也在循环你的
标签,所以numchild=5
是错误的。(你有5个div和5个br)。你能发布模板和指令吗?你试过偏移宽度吗?试过了,都不起作用css('height')
或css('width')如何
?您可以在指令中简单地将jquery用作$(el).height()或$(el).width()zepto。
angular.module('components', [])
.directive('mydir', function () {
numchild = 5
return {
restrict: 'E',
replace: true,
link: function(scope, element, attr) {
for(var i=0; i<numchild; i++){
if(i==0){
element.append('<div class="myclass" style="display:table">Random</div><br>');
}
else {
element.append(
'<div class="myclass" style="display:table">Random noise here and there and everywhere around us</div><br>'
)
}
console.log(angular.element(element.children()[i]).clientWidth);
}
}
}
})
angular.module('MyApp', ['components'])