如何在Angular指令的Link函数中设置CSS样式

时间:2015-06-30 15:09:36

标签: javascript html angularjs dom

单击自定义Angular指令时,我尝试在某个类上设置CSS样式。我想在Link函数中完成这个(以及任何其他DOM操作)。 以下是我到目前为止所做的,但我收到address.on is not a function错误。单击-webkit-filter: none类元素时,如何在blur类上正确设置CSS blur

function link(scope, element, attributes) {
  var address = element[0].getElementsByClassName('blur');
  address.on('click', function() {
    address.css({'-webkit-filter': 'none'});
  });
}

1 个答案:

答案 0 :(得分:9)

address是一个DOM元素。您需要将其包装在angular.element中以将其转换为jqLit​​e对象:

function link(scope, element, attributes) {
  var address = angular.element(element[0].getElementsByClassName('blur'));
  address.on('click', function() {
    address.css({'-webkit-filter': 'none'});
  });
}