画面サイズに応じて画像ソースを変更する角度指示があります。静的コンテンツではうまく動作していますが、$ http要求からの動的データは機能しません。データは$ HTTPリクエストとディレクティブから取得するのと同じである静的データ$ HTTP
<div ng-repeat="slideContent in vm.slides track by $index" >
<div ng-bind-html="vm.getHtml(slideContent)"></div>
</div>
から
マイディレクティブ
app.directive("changeOnScreenResize", ["$window", function($window) {
return {
restrict: 'A',
link: function(scope, elem, attrs) {
$window.onresize = function() {
changeImage();
scope.$apply();
}
changeImage();
function changeImage() {
scope.screenWidth = $window.innerWidth;
if(scope.screenWidth <= 600) {
elem.attr('src', attrs.small);
console.log(attrs.small);
}
else {
elem.attr('src', attrs.big);
}
}
}
};
}]);
動的データコールは、この場合には正常に動作しています。
<img change-on-screen-resize src="abc.jpg" small="xyz.jpg" big="abcd.jpg" >
「vm.slides」はどのように見えますか?なぜ関数を通して 'HTML'を取得しなければならないのですか? – Kyle
実際には各スライド画像には別のhtmlページがあり、これをajax呼び出しで取得し、[vm.slides]配列に設定して[ng-repeat]で表示されます –
サンプルJSONを貼り付けることはできますか? http://jsoneditoronline.org/ – Kyle