jQuery addClass добавление класса ко всем элементам - PullRequest
0 голосов
/ 27 апреля 2020

Я добавляю класс к <i> и удаляю предыдущий выбранный класс, щелкая элемент <li>. Это не добавление класса и удаление, а добавление класса ко всем элементам <i> внутри <li>

jQuery

$('ul.video_menu li').click(function(e) {
    $('ul.video_menu li i').removeClass('fas fa-play');
    $('ul.video_menu li i').addClass('fas fa-play');
});

HTML

<ul class="video_menu">
    <li class="play_video"><i class="fas fa-play"></i>ABC</li>
    <li><i></i>XYZ</li>
</ul>

1 Ответ

3 голосов
/ 27 апреля 2020

Используйте $(this) для нацеливания только на выбранный в данный момент li-элемент

$('ul.video_menu li').click(function(e) {
    $('ul.video_menu li i').removeClass('fas fa-play');
    $(this).find('i').addClass('fas fa-play');
});
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css" crossorigin="anonymous">
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul class="video_menu">
    <li class="play_video"><i class="fas fa-play"></i>ABC</li>
    <li><i></i>XYZ</li>
</ul>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...