Динамическое изменение класса AwesomeIcon с помощью JQuery

У меня есть этот классный значок

<i id = "myIdAwesomeIcon" class = "fa fa-toggle-off fa-lg"  style = "color:#e6e6e6;" aria-hidden = "true"></i>

который я пытался изменить класс, используя

 $('myIdAwesomeIcon').addClass('fa fa-toggle-on fa-lg').removeClass('fa fa-toggle-off fa-lg');

что-то изменилось, но результат не ожидаемый:

Динамическое изменение класса AwesomeIcon с помощью JQuery

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
1
0
86
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

В результате вы удалите классы fa и fa-lg. Если вы просто хотите заменить toggle-on на toggle-off, используйте toggleClass(), например:

$('#myIdAwesomeIcon').toggleClass('fa-toggle-on fa-toggle-off');

Вам не хватает # для селектора id, и я рекомендую сначала использовать removeClass, а затем addClass. Поскольку ваш цвет css был таким светлым, в этом примере я изменил цвет на red.

$('#myIdAwesomeIcon').removeClass('fa fa-toggle-off fa-lg').addClass('fa fa-toggle-on fa-lg');
<script src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<i id = "myIdAwesomeIcon" class = "fa fa-toggle-off fa-lg"  style = "color:red;" aria-hidden = "true">ss</i>

Учитывая, что OP говорит: «что-то изменилось, но не то, что они хотели», я бы предположил, что это просто опечатка при расшифровке кода вопроса.

Rory McCrossan 23.04.2018 11:30

@RoryMcCrossan, подождите, пожалуйста, ответа ОП по этому поводу

Ankit Agarwal 23.04.2018 11:31

removeClass('fa fa-toggle-off fa-lg'); удаляет fa, fa-toggle-on и fa-lg, в вашем случае вам нужно удалить и добавить только уникальные классы. Следовательно, ваш код будет выглядеть следующим образом:

$('#myIdAwesomeIcon').addClass('fa-toggle-on').removeClass('fa-toggle-off');

Примечание: # для id и. for class требуется как селектор в jQuery.

Другие вопросы по теме