如果我有一个支持AngularJS的网页,那么添加一些光图像分层,缩放和定位(在特定框内)功能的最佳选择/惯例是什么?
我是否开始为我需要的“控件”添加jquery,还是有更好的方法?
答案 0 :(得分:2)
你可以使用jQuery,但它不会只是一个有角度的方式来做它。如何为控件创建指令,并在单击时调用控制器方法之一。
<强> HTML:强>
<div ng-app="Images">
<div ng-controller="imagesfilter">
<button filter="lighten">Lighten image</button>
</div>
</div>
<强> App.js 强>
var Images = angular.module('Images', []);
<强> Directive.js 强>
Images.directive("filter",function(){
var filter = function(scope,element,attrs) {
element.bind('click',function(e){
e.preventDefault();
//calls lighten method on controller
scope.$apply(attrs.type);
// if you need to apply any css you can access element here too
});
};
return filter;
});
<强> Controller.js 强>
Images.controller('imagesfilter',['$scope', function ($scope) {
$scope.lighten = function() {
// your lighten code here.
};
}]);