Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 动态生成图像源angularjs_Javascript_Html_Angularjs - Fatal编程技术网

Javascript 动态生成图像源angularjs

Javascript 动态生成图像源angularjs,javascript,html,angularjs,Javascript,Html,Angularjs,我尝试使用angular JS动态选择图像源,如下所示: <img star-video src="[[getStar(vid.videoId)]]" > 但是,当我尝试使用类似的方法生成youtube链接时,它可以使用getVidLink() 你能帮我理解为什么它在youtube的iframe上工作,而不是在img元素上工作吗。如果有更好的方法,请您提供建议。您需要提供src作为ngsrc,并且您必须使用角度语法{{getStar(video.id)},即使我使用ngsrc它也不

我尝试使用angular JS动态选择图像源,如下所示:

<img star-video src="[[getStar(vid.videoId)]]" >
但是,当我尝试使用类似的方法生成youtube链接时,它可以使用getVidLink()


你能帮我理解为什么它在youtube的iframe上工作,而不是在img元素上工作吗。如果有更好的方法,请您提供建议。

您需要提供
src
作为
ngsrc
,并且您必须使用角度语法
{{getStar(video.id)}
,即使我使用ngsrc它也不起作用。我正在使用angular和django,所以为了避免与django模板冲突,我不得不使用interpolate,这样我就可以使用[[]]而不是{{}@DHRUVGUPTA对不起,这是一个打字错误。我编辑了itNo@DHRUVGUPTA。由活动和非活动表示的链接指向图像。我想说的是,当我在iframe中添加指向视频的链接时,它可以工作,但当我在图像上使用类似技术时,它就不工作了。
.controller("rightNavController", ["$scope", function($scope) {      

  $scope.getVidLink = function(vidID){
    return "https://www.youtube.com/embed/" + videoID + "?autoplay=0&controls=0";
  };

  var inactive = "http://local/path/to/img/star_inactive.png";
  var active = "http://local/path/to/img/star_active.png";

  $scope.getStar = function(videoID){
    jq.each($scope.$root.starredVids, function(){
      if(this.videoID === videoID){
        return active;
      } else{
        return inactive;
      }
    });
  };
}])