我有一个我目前正在制作的指令,它是一个文本类型的输入字段。现在,如果文本对于输入字段而言太大,我希望该字段的宽度动态增长。以下是我的指令:
.directive('dynamicInput', function () {
return {
restrict: 'E',
template: '<input type="text" style="display: inherit;" class="form-control" required />',
require: 'ngModel',
link: function (scope, element, attrs, ngModel) {
console.log('ATTRS: ', attrs);
console.log('ELEMENT: ', element);
if(attrs.width){
console.log('WiDTH: ', attrs);
}
}
}
});
这是plunker:
我知道您可以更改您在元素对象上使用的 CSS 类,但是,我不只是想更改我想要基本上动态更改宽度的类,因为文本在框内增加。所以问题是:如何将每次触发“onchange”事件时的 CSS 更改为正在输入的文本的长度?另外,我想将它包含在一个指令中,这样我就不会依赖它声明的父范围内的任何东西。