angular js指令替换img标签上的ng-src

时间:2014-04-20 19:06:30

标签: javascript jquery html angularjs

目前我有一个图像标签,我需要在其中进行JavaScript替换。我正在网上看,并且我已经阅读了一些人们关于使用指令来实现这一目标的想法,但我们找不到可以帮助我的例子。

我目前的设置如下:

HTML:

<img ng-src="{{day.Item.Logo}}" item-logo>

day.Item.Logo只是一个返回的字符串,看起来像这样。

http://domainnamehere.com/image%s%s.png

我目前的指示。

    myApp.directive("itemLogo", function() {
        return function(scope, element, attrs) {
           attrs.ngSrc = attrs.ngSrc.replace("%s", "24");
           attrs.ngSrc = attrs.ngSrc.replace("%s", "24");
        }
    });

我知道我在相信的指令中显然做错了但我不确定。基本上我想替换&#34;%s&#34;用&#34; 24&#34;并在它发出获取/加载图像的请求之前将其返回到视图。

1 个答案:

答案 0 :(得分:2)

我认为问题是按角度进行指令处理的顺序。当它编译你的指令时,ng-src可能已经被处理了。我会在将它放入模型之前修改控制器中的url。

另一种方法是对ng-src进行函数调用,修改url。

ng-src='{{formatUrl(day.Item.Logo)}}'

这是JSBin