如何在指令中获取元素宽度?
在我的情况下,一个指令被多次调用,我必须通过element参数来知道被调用的元素。
但是我不知道如何在元素宽度内获得一个类?
例如,我有一个名为标签的类,所以我在这些方面做了一些事情:
console.log(element.find(.labels).width());
但这并不起作用,它会带来零...即使下面的代码长度为1.:
console.log(element.find('.labels').length);
显然,似乎认为这个类是一个对象,但从我能说的不是。
我还应该指出,我试图获得宽度的元素上有一个转换css属性。我不认为这会影响我尝试做的事情。
答案 0 :(得分:0)
我已经为高度做了类似的事情,这里将适应宽度(虽然没有经过测试):
angular.module('app')
.directive('findWidth', function($timeout) {
return {
type: "A",
link: function(scope, element) {
$timeout(init, false);
function init() {
var offsetWidth = element[0].offsetWidth;
}
},
};
});
PS:您可能不需要超时技巧
更多信息:https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetWidth