Динамическое добавление и удаление значка при нажатии на видео

У меня есть div, в котором у меня есть список URL-адресов видео, и мне нужно динамически добавлять значок воспроизведения, пока видео воспроизводится, и мне нужно его удалить. В то время как другое видео нажато и добавлено к этому видео. Но я не могу удалить его, пока нажимается другой.

Вот мой html и скрипт, которые я пробовал до сих пор,

    <div class = "myDiv" >
    <ul>
    <li class = "videoList" id = "item-0" >
    <div class = "row" href = "#video1">
    <div>
    <img class = "ImagContent">
    </div>
    <div>
    <label class = "myClass">Text</label>
    </div>
    </div>
    </li>
<li class = "videoList" id = "item-1" >
    <div class = "row" href = "#video1">
    <div>
    <img class = "ImagContent">
    </div>
    <div>
    <label class = "myClass">Text</label>
    </div>
    </div>
    </li>
    </ul>
    </div>

$('.myDiv').click(function () {
var id=$(this).attr('id')
   $('#'+id).find('.myclass').append('<i style = "font-size:24px" class = "fa">&#xf144;</i>');
});

Кто-нибудь может помочь мне решить эту проблему?

Заранее спасибо!!

Вы хотите выполнять действие, когда кто-то нажимает на элемент li?

Yogendra 30.05.2019 07:43

После щелчка по самому элементу div должно воспроизводиться видео и отображаться значок.

Alisa 30.05.2019 07:50

Ваш вопрос не снят. где ссылка на видео? вы хотите добавить значок перед ним. Пожалуйста, добавьте html с несколькими видео. Если вы не хотите показывать URL, просто напишите video_url1, video_url2. Так что я могу легко помочь вам.

Yogendra 30.05.2019 07:56

Еще раз отредактировал. @Йогендра

Alisa 30.05.2019 08:05
Как конвертировать HTML в PDF с помощью jsPDF
Как конвертировать HTML в PDF с помощью jsPDF
В этой статье мы рассмотрим, как конвертировать HTML в PDF с помощью jsPDF. Здесь мы узнаем, как конвертировать HTML в PDF с помощью javascript.
1
4
44
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

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

/*$(".videoList").click(function () {

  $('.videoList').find('.myClass').html(""); // remove icon from  myClass
    $(this).find('.myClass').append('<i style = "font-size:24px" class = "fa">&#xf144;</i>'); // append icon 
});*/


$(document).on('click',".videoList",function(e) {
  e.preventDefault();
  $('.videoList').find('.myClass').html(""); // remove icon from  myclass
    $(this).find('.myClass').append('<i style = "font-size:24px" class = "fa">&#xf144;</i>'); // append icon 
});
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<form>
<div class = "myDiv" >
    <ul>
        <li class = "videoList" id = "item-0" >
            <div class = "row" href = "#video1">
                <div>
                    <img class = "ImagContent">Image 1
                </div>
                <div>
                    <label class = "myClass">Text</label>
                </div>
            </div>
        </li>
        <li class = "videoList" id = "item-1" >
            <div class = "row" href = "#video1">
                <div>
                    <img class = "ImagContent">Image 2
                </div>
                <div>
                    <label class = "myClass">Text</label>
                </div>
            </div>
        </li>
    </ul>
</div>


</form>

Попробуйте следующее

$('.videoList').click(function () {
    $('.videoList').find('.myClass').html(); // remove icon from  myclass
    $(this).find('.myClass').append('<i style = "font-size:24px" class = "fa">&#xf144;</i>'); // append icon 
});

вы также можете использовать функцию html

$(this).find('.myClass').html('<i style = "font-size:24px" class = "fa">&#xf144;</i>'); 

Если вы хотите добавить текст, используйте $('.videoList').find('.myclass').html("Text");

Yogendra 30.05.2019 08:30

На самом деле я использовал ваш js-скрипт. В html имя вашего класса «myClass», а в коде javascript вы используете «myclass». Я проверил это, теперь оно работает. Я дал вам 2 сценария. оба будут работать 1 прокомментирован другой нет

Yogendra 30.05.2019 13:00

Попробуйте следующий код

$('.videoList').click(function () {
    var id=$(this).attr('id');
    $('.myclass').html('text'); // set default value for all
    $('#'+id).find('.myClass').append('<i style = "font-size:24px" class = "fa">&#xf144;</i>'); // append icon to myClass 
});

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