Ich habe eine Liste, die eine ng-Wiederholung details
hat.
Wenn ich über einen der li
schweben, möchte ich die div namens background
, die außerhalb der ng-Wiederholung liegt, um es auf die details
's URL zu ändern.Element außerhalb Zugriff auf Daten in einem externen ng-repeat
Aber ich weiß nicht, wie das äußere Element auf die Daten der ng-Wiederholung zugreifen kann.
plunkr: https://plnkr.co/edit/lGRfE9YGYN645Ztpr94K?p=preview
var app = angular.module('plunker', []);
app.controller('MainCtrl', function($scope) {
$scope.details = [
{ "name": "Employees", "url":"https://i.pinimg.com/736x/76/47/9d/76479dd91dc55c2768ddccfc30a4fbf5--pikachu-halloween-costume-diy-halloween-costumes.jpg" },
{ "name": "Support", "url":"https://i.pinimg.com/736x/76/47/9d/76479dd91dc55c2768ddccfc30a4fbf5--pikachu-halloween-costume-diy-halloween-costumes.jpg" }
];
});
HTML:
<!DOCTYPE html>
<html ng-app="plunker">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script>document.write('<base href="' + document.location + '" />');</script>
<link rel="stylesheet" href="style.css" />
<script data-require="[email protected]" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.8/angular.min.js" data-semver="1.0.8"></script>
<script src="app.js"></script>
</head>
<body ng-controller="MainCtrl">
<div class="background">
<ul ng-repeat="detail in details">
<li>{{detail.name}}
</li>
</ul>
</div>
</body>
</html>
Verwenden 'ng-mouseenter' und' ng-mouseleave' auf schweben. Setzen Sie eine Variable auf wahr/falsch und verwenden Sie diese Variable in 'ng-class', um Ihre benutzerdefinierte Klasse hinzuzufügen. –
Problem verwendet nicht diese, ich weiß nicht, wie man auf die ng-Repeat-Elemente zugreifen kann. – Snorlax
Diese Variable ist über den gesamten Controller-Bereich zugänglich. –