Я хочу, чтобы моя кнопка меняла цвет при нажатии. Также измените его только на 3 секунды, а затем вернитесь к цвету по умолчанию. Я просматривал похожие вопросы о переполнении стека, но все, что я пробовал, не сработало (не знаю, почему мой код не работает). Также я не уверен, как заставить его изменить цвет всего за 3 секунды. Пока я 1. $scope.isActive=false; 2. затем в контроллере я изменил его на true, если нажал:
$scope.copyText = function(text){
$scope.isActive = !$scope.isActive;
console.log('clicked in controller');
Clipboard.copy(text)
}
html:
<div class="inner-single" ng-hide="updateInfo">
<h3>Login Details:</h3>
<h5 ><span class="categories">Username:</span> {{account.username}}<button
ng-click="copyText(account.username)" ng-class="isActive ? 'noColor' : 'hasColor'" >
Copy</button></h5>
<button class="btn btn-large btn-default" ng-click="showForm()">Update Info</button>
CSS
.copy-button {
.copy-button.hasColor {
color:green;
}
.copy-button.noColor {
color: grey; }
font-size: 12px;
padding: 0px, 3px, 0px, 3px;
margin-left: 5px; }
}
Для отслеживания секунд я бы использовал функцию setTimeout, однако не знаю, как объединить ее с angular и изменить цвет.
Рад предложениям! Благодарю вас!