我在angularJS中使用CKEditor。我正在尝试使用CKEditor保存笔记,其中包括图像。它适用于所有其他HTML标记,但在尝试访问<img>
上的CKEditor内容时会过滤ng-click
个标记。当我在添加图像后在CKEditor中看到源代码时,它会显示我添加的img
元素。这是我对CKEditor的指令:
'use strict';
define(['angular'], function(angular) {
var Directives = angular.module('Directives', []);
Directives.directive('ckEditor', [function() {
return {
require: '?ngModel',
link: function($scope, elm, attr, ngModel) {
var ck = CKEDITOR.replace('lanEditor',{extraAllowedContent: 'img[alt,!src]{width,height}'});
ck.on('pasteState', function() {
$scope.$apply(function() {
ngModel.$setViewValue(ck.getData());
});
});
ngModel.$render = function(value) {
ck.setData(ngModel.$modelValue);
};
}
};
}]);
});
下图显示添加图片后的来源:
我已经尝试了$compileProvider
- imgSrcSanitizationWhitelist
,但它无效。我无法弄清楚AngularJS或CKEditor是否导致img
标签的清理。