[Solved] implementing advertisement directive in angular js


app.directive('navBannerTop', ['NavBannerServiceTop','$rootScope', function (nbs,$window) {

 return {
    restrict: 'E',
    //scope: true,
    scope: {},

   template:' <div><a href= "https://stackoverflow.com/questions/37075201/{{banner_link}}"  target="_blank"> <img ng-src="{{zentieraUrl}}/assets/images/adBanner/{{banner_pic_url}}"></a></div>',
    link: function ($scope,$element,$attr,$rootScope) {
          var imagePosition=$attr.imageposition;
          nbs.getImage(imagePosition).then(function(result){
              $scope.banner_pic_url = result.data.banner;
        });
    }
};
}]);

Finally I have solved the problem. First I create a directive. In that directive, I returned a template. The directive uses a service too.

app.service('NavBannerServiceTop', ['$http', '$q', function ($http, $q,$rootScope) {
var deferred = $q.defer();
var service = {};
service.getImage = function (imagePosition) {
        var params={
        position:imagePosition
    };
    $http.post(Config.STATIC_URL + 'users/getadvertisement',params).success(function (data) {
         var adImage=data.data.banner;
         var advlink=data.data.advlink;
          deferred.resolve(data);
    }).error(function () {
         deferred.reject('some error');
    });

    return deferred.promise;
};
return service;
}]);

In the service, I take the data from server, ie the image url.This image url is passed to directive. In the view side I call the directive as a custom tag.

solved implementing advertisement directive in angular js