Never use jQuery
with angular unless & until required, because whatever is available in jquery is achievable in angularjs.
Dont Include ~18kb library into your page unnecessarily, for me its more like redundant code & also performance hit.
Think in Angular Way First
when coding a solution, first "think in AngularJS"; if you can't think of a solution, ask the community; if after all of that there is no easy solution, then feel free to reach for the jQuery. But don't let jQuery become a crutch or you'll never master AngularJS.
Pure Angular solution
HTML CODE:
<div ng-app="testApp" ng-controller="testCtrllr">
<div ng-style="{'background-color': backgroundImageInfo}">
<input type="file" onchange="angular.element(this).scope().fileThatChangeBackground(this)" />
</div>
</div>
AngularJS Code:
angular.module('testApp',[])
.controller('testCtrllr', function($scope){
$scope.backgroundImageInfo='red';
$scope.fileThatChangeBackground = function(scope) {
$scope.$apply(function(){$scope.backgroundImageInfo='blue';});
};
});
Live Demo @ JSFiddle