javascript – 如何使angularJS $watch检测风格的变化?

前端之家收集整理的这篇文章主要介绍了javascript – 如何使angularJS $watch检测风格的变化?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有一个包含所有样式控件的富文本框.

当我在其中输入新文本时 – 它会保存.

当我对内容(文本)进行任何更改以及一些样式(如颜色突出显示和粗体文本)时,它会保存更改的文本和样式.

但是,当我只是在没有任何内容更改的情况下进行样式更改时 – 它不会保存这些样式更改.

我使用$watch来比较新值和旧值.

如何使其适用于风格变化?

最佳答案
@H_403_17@angular.module("app",[]).directive('spyStyle',[function () { return { link: function (scope,element,attrs) { scope.$watch(function () { return element.css(attrs['spyAttribute']); },styleChangedCallBack,true); function styleChangedCallBack(newValue,oldValue) { if (newValue !== oldValue) { // do something interesting here } } } }; }]);

在您的HTML中:

@H_403_17@

如果您想在指令外执行自定义函数

@H_403_17@

在您的指令代码中进行此更改:

@H_403_17@angular.module("app",oldValue) { if (newValue !== oldValue) { // do something interesting here // invoking callback function: scope[attrs['spyStyle']](newValue); } } } }; }]);

猜你在找的jQuery相关文章