我用一个指令Imageonload来管理我的图片加载预载:ImageonLoad指令AngularJS
Directive.js
.directive('imageOnload', function() {
return {
restrict: 'A',
link: function(scope, element, attrs) {
element.bind('load', function() {
// call the function that was passed
scope.$apply(attrs.imageOnload);
// usage: <img ng-src="src" image-onload="imgLoadedCallback()" />
});
}
};
});
Controller.js
$scope.imgLoadedCallback=function(map){
map.flag=false;
};
Viewer.html
<img src="images/loading_bar.gif" ng-show="mapAllDataSets[$index].flag" >
<img class="img-responsive center-block" ng-src="{{mapAllDataSets[$index].src}}" image-onload="imgLoadedCallback(mapAllDataSets[$index])" >
这是w只要我不试图连续显示相同的图像,就可以正常工作。
如果我调用相同的图像,我的预加载器将不会隐藏。我不明白为什么。
你能不能做一个(基本,简单)plunker或小提琴和张贴链接?这将更容易找到错误。 – akashrajkn