0
我想在AngularJS上使用jQuery插件。我用一個指令初始化:如何編譯一些已經呈現的HTML?
.directive('myDirective', function($compile) {
return {
link : function(scope, elem, attrs) {
statusPopup = elem.find('div');
scope.$on('anEvent', function(event, param) {
popupParam = {
context : ".anId",
title : '<div class="ui label"><i ng-click="test()" class="remove icon""></i></div>' + param.title,
content : param.text
};
statusPopup.popup(popupParam).popup('show');
scope.test = function() {
console.log('Clic passsed !')
}
})
},
templateUrl : 'myTemplate.html'
};
});
這對我的DOM插件插入(進入myTemplate.html
視圖)的HTML代碼,你可以在popupParam.title
參數見。
但是這段代碼包含一個圖標,我想用ng-click
指令激活它。
如何編譯此內容?我測試了以下代碼:
title : $compile('<div class="ui label"><i ng-click="test()" class="remove icon""></i></div>' + param.title)(scope)
但它返回一個對象,我的插件不理解。任何想法或解決方法?
它返回'angular element' /'jQuery元素'。如果你的插件需要一個字符串,那麼它不會理解那個對象。這一切都取決於插件。在插入DOM之後,您可以「編譯」彈出窗口(但是我們需要更多關於插件功能的詳細信息)。 – gkalpak
@ExpertSystem插入後編譯彈出窗口的好主意,它工作正常! – Fractaliste