У меня есть div с настройками видео, так что когда я нажимаю кнопку воспроизведения (.video-play-container
), видео исчезает, а затем, когда я нажимаю кнопку закрытия (.close-video
), видео исчезает. Проблема заключалась в том, что когда видео погасло, оно продолжало играть в фоновом режиме. Поэтому я освободил src
этой строкой ('$(.youtube-player').attr('src', '');
). Однако это было бы хорошо, если бы пользователю не нужно было снова видеть видео. Но если он хочет открыть видеоролик, src
теперь пуст, поэтому он не может видеть видео. Как я могу восстановить src
после того, как я его вынул, чтобы пользователь мог видеть видео более одного раза?Пропустить div с jQuery, а затем вернуть его обратно?
$('.video-play-container').click(function(e){
e.preventDefault();
$('.video-play-container').fadeOut(500);
$('.overlay').fadeIn(500).show();
$('#feat-video').fadeIn(500).show();
});
$('.close-video').click(function(e){
e.preventDefault();
$('#feat-video').fadeOut(500);
$('.youtube-player').attr('src', '');
$('.overlay').fadeOut(500);
$('.video-play-container').show().fadeIn(500);
});
Edit: Обновлен код
var src;
src = $('.youtube-player').attr('src');
$('.video-play-container').click(function(e){
e.preventDefault();
$('.video-play-container').fadeOut(2000);
$('.overlay').fadeIn(2000).show();
$('#feat-video').fadeIn(2000).show();
});
$('.close-video').click(function(e){
e.preventDefault();
$('#feat-video').fadeOut(2000);
$('.youtube-player').attr('src', '');
$('.overlay').fadeOut(2000);
$('.video-play-container').show().fadeIn(2000);
$('.youtube-player').attr('src', src);
});
Edit: Обновлен код 2
var src;
src = $('.youtube-player').attr('src');
$('.video-play-container').click(function(e){
e.preventDefault();
$('.video-play-container').fadeOut(2000);
$('.overlay').fadeIn(2000).show();
$('#feat-video').fadeIn(2000).show();
});
$('.close-video').click(function(e){
e.preventDefault();
$('#feat-video').fadeOut(2000);
$('.overlay').fadeOut(2000);
$('.video-play-container').show().fadeIn(2000);
$('.youtube-player').attr('src', '');
$('.youtube-player').attr('src', src);
});
Edit: Обновлен код 3
var src;
src = $('.youtube-player').attr('src');
$('.video-play-container').click(function(e){
e.preventDefault();
$('.video-play-container').fadeOut(2000);
$('.overlay').fadeIn(2000).show();
$('#feat-video').fadeIn(2000).show();
});
$('.close-video').click(function(e){
e.preventDefault();
$('#feat-video').fadeOut(2000);
$('.overlay').fadeOut(2000, function() {
$('.youtube-player').attr('src', '');
});
$('.video-play-container').show().fadeIn(2000);
$('.youtube-player').attr('src', src);
});
Edit: Обновленный код 4 (Final)
var src;
src = $('.youtube-player').attr('src');
$('.video-play-container').click(function(e){
e.preventDefault();
$('.video-play-container').fadeOut(2000);
$('.overlay').fadeIn(2000).show();
$('#feat-video').fadeIn(2000).show();
});
$('.close-video').click(function(e){
e.preventDefault();
$('#feat-video').fadeOut(2000);
$('.overlay').fadeOut(2000, function() {
$('.youtube-player').attr('src', '');
$('.youtube-player').attr('src', src);
});
$('.video-play-container').show().fadeIn(2000);
});
Он скрыт, но существует, поэтому по-прежнему играет по разным причинам.Взгляните на [JS API YouTube] (https://developers.google.com/youtube/js_api_reference) –
@Jeremy Да, вот что я понял. Фактически я смотрел на YT API за последние несколько часов, но я не могу понять концепцию. Итак, я решил, что это будет более легкое решение (если это возможно). – J82
Остановите воспроизведение видео или добавьте '.html()' в var, а затем используйте 'remove()'. Повторите попытку позже. Гораздо проще прекратить игру с помощью 'player.stopVideo(): Void' –