Ginger22
Ginger22

Reputation: 157

Load Initial Image to Page AngularJS

I have a list of names from the model that are listed on the page when the page loads. When i click the name, the corresponding image from the model appears on the page. Is there a way within this to load an initial image [0]when the page loads? This could be a random image or the first image in the model data set.

<!DOCTYPE html>
<html ng-app = "myApp"><head>
    <meta charset="UTF-8">
    <title>Cat Clicker</title>
    <link rel="stylesheet" type="text/css" href="bootstrap.min.css">
    <link rel ="stylesheet" type "text/css" href ="clicker.css">

    <script type = "text/javascript" src="Libs/angular.js"></script>
    <script type = "text/javascript" src="js/CatClickerMe.js"></script>
<body>

<div ng-controller = "MainController as vm">

  <div ng-repeat = "cat in vm.options.catList">


    <h3 ng-click = "vm.selectCat(cat)">{{cat.name}}</h3>

    </div>
    <hr>


  <h3>{{vm.selectedCat.name}}</h3>



  <img ng-src ="{{vm.selectedCat.images}}">
  </div>

  </div>

</div>
</body>
</html>

JS

"use strict";


angular.module('myApp',[]);

angular.module('myApp').controller('MainController', function($scope) {
  var vm = this;

   vm.selectCat=selectCat;

vm.options = {

   catList:[

   {
    name:  'Fluffy',
    images: 'images/Fluffy.jpeg'
  },

  {
    name:  'Blacky',
    images: 'images/blacky.jpeg'
  },
  {
    name: 'Tabby',
    images: 'images/tabby.jpeg'
  },

  {
    name:  'Cleo',
    images: 'images/Cleo.jpeg'
  }
],
};

function selectCat(pos) {
  vm.selectedCat = pos;
};


});

Upvotes: 1

Views: 88

Answers (2)

Anil Sarkar
Anil Sarkar

Reputation: 160

Load first image by setting vm.selectedCat just below vm.options

vm.selectedCat = vm.options.catList[0];

Below is the jsfiddle link for your reference

jsfiddle : https://jsfiddle.net/Lpaudwf8/21/

Upvotes: 1

himadri
himadri

Reputation: 638

Can you Try this :-

"use strict";
angular.module('myApp',[]);

angular.module('myApp').controller('MainController', function($scope) {
  var vm = this;

   vm.selectCat=selectCat;

vm.options = {

   catList:[

   {
    name:  'Fluffy',
    images: 'images/Fluffy.jpeg'
  },

  {
    name:  'Blacky',
    images: 'images/blacky.jpeg'
  },
  {
    name: 'Tabby',
    images: 'images/tabby.jpeg'
  },

  {
    name:  'Cleo',
    images: 'images/Cleo.jpeg'
  }
],
};

function selectCat(pos) {
  vm.selectedCat = pos;
};
function Init(){
   vm.selectedCat = vm.options.catList[0];
}

Init();

});

Upvotes: 1

Related Questions