Hola a todos, tengo un botón con un icono de fuente impresionante. Quiero alternar ese ícono usando jQuery o Javacript, cualquier cosa estaría bien. Intenté jQuery pero el ícono anterior no se elimina del botón. El ícono nuevo se alterna. Aquí está el código-
<button class="btn btn-primary" id="share_screen_button" ng-click="share_screen()"><i class="fas fa-desktop"></i></button> $scope.share_screen=async () => { if ( $scope.roomObject === undefined) return; if (screenShareObj === undefined) { screenShareObj = await $scope.roomObject.createScreenShareObject(); $("#share_screen_button").removeClass("fas fa-desktop"); $("#share_screen_button").addClass("far fa-window-close"); } else { screenShareObj.leave(); screenShareObj = undefined; $("#share_screen_button").removeClass("far fa-window-close"); $("#share_screen_button").addClass("fas fa-desktop"); } }¿Cómo resolver esto? por favor ayuda
Cuando esté utilizando Angularjs o cualquier otro marco, evite la manipulación directa en la medida de lo posible. deja que framework lo haga por ti.
HTML
<div ng-app="myApp" ng-controller="myCtrl"> <button class="btn btn-primary" id="share_screen_button" ng-click="toggle()"> <i ng-class="{'fas fa-desktop':which_class,'far fa-window-close':!which_class}"></i> </button> </div>JS
var app = angular.module('myApp', []); app.controller('myCtrl', function($scope) { $scope.which_class=true $scope.toggle = function() { $scope.which_class = !$scope.which_class console.log($scope.which_class) } });