У меня есть этот код для слайдера изображений и следующего преда и автоматического изменением Функции изображения
scope.next = function() {
scope.currentIndex < scope.images.length - 1 ? scope.currentIndex++ : scope.currentIndex = 0;
};
scope.prev = function() {
scope.currentIndex > 0 ? scope.currentIndex-- : scope.currentIndex = scope.images.length - 1;
};
scope.$watch('currentIndex', function() {
scope.images.forEach(function (image) {
image.visible = false;
});
scope.images[scope.currentIndex].visible = true;
});
var timer;
var sliderFunc = function() {
timer = $timeout(function() {
scope.next();
timer = $timeout(sliderFunc, 5000);
}, 5000);
};
sliderFunc();
scope.$on('$destroy', function() {
$timeout.cancel(timer);
});
и в шаблоне слайдера У меня есть стрелки ссылаются на следующую и предыдущую функцию
<div class="arrows">
<a href="#" ng-click="prev()">
<img src="tasavir/omgh/left-arrow.png" />
</a>
<a href="#" ng-click="next()">
<img src="tasavir/omgh/right-arrow.png" />
</a>
</div>
Я просто хочу добавить прозрачную функцию $ timeout, когда пользователь нажимает на следующую или предыдущую бит и каждый раз, когда пользователь нажимает на следующую или предыдущую дату, таймер был ясен и менял изображение через 5 секунд позже.
это полный документ о image slider
Я создаю JSFiddle для этого please look at this
Почему вы используете тайм-аут в тайм-аут? Может быть, вы используете $ interval? –
, пожалуйста, сделайте это в JSFiddle https://jsfiddle.net/hemedani/8cLw6wch/15/ –