假设我有:
directives.directive('foo', function () {
return {
restrict:'A',
scope: true,
link:function (scope, element, attr) {
console.log('innerHTML is ' + element.innerHTML);
scope.$watch('update', function (newValue) {
console.log('innerHTML is... ' + element.innerHTML);
});
}
}
});
...那么innerHTML是未定义的。我想这是由于 Angular 处理 DOM 的方式造成的。获取innerHTML的正确方法是什么?
The element
传递给你的变量link
函数是一个 jqLite 对象 - 而不是 DOM 对象。您可以通过以下方式获取 DOM 对象element[0]
(就像在 jQuery 中一样),但是 jqLite 为您提供了一个方法:element.html()
。查看docs http://docs.angularjs.org/api/angular.element.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)