Я новичок в фоновом видео.
Мой вопрос: могу ли я просто изменить цвет фона с каждой стороны (справа или слева) на видео с YouTube, когда я наводю курсор на каждую из сторон?
Так что практически, когда я наведен на левую сторону ... оранжевый фон будет заменен специальным видео на YouTube, а когда я наведу курсор на правую сторону (красный фон), он будет воспроизводить видео (отличное от левой стороны) в качестве фона.
Я много часов искал в Интернете, но не могу найти подходящего решения.
вот мой код:
.split {
height: 100%;
width: 50%;
position: fixed;
z-index: 1;
top: 0;
overflow-x: hidden;
padding-top: 20px;
}
.left {
left: 0;
background-color: #E9D94C;
}
.right {
right: 0;
background-color: #EA2029;
}
.centered {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
text-align: center;
}
.centered img {
width: 100px;
border-radius: 50%;
}<div class = "container col-md-10">
<div class = "top-intro" style = "position: relative;padding:20px;height:auto;margin:0 auto;font-family: arial;font-size: 12px;z-index: 99999;font-size: 15px;color: #000;text-align: center;border-radius: 10px;top:25px;background:rgba(255,255,255,0.5);">
Lorem ipsum sit amet dolor
</div>
</div>
<div class = "container-fluid">
<div class = "split left">
<div class = "centered">
<img src = "https://www.w3schools.com/howto/img_avatar.png" alt = "Avatar woman">
<h2>Jane Flex</h2>
<p>Some text.</p>
</div>
</div>
<div class = "split right">
<div class = "centered">
<img src = "https://www.w3schools.com/howto/img_avatar2.png" alt = "Avatar man">
<h2>John Doe</h2>
<p>Some text here too.</p>
</div>
</div>
</div>вот мой полный код: http://jsfiddle.net/xkobLdv9/4/
Или мне для этого нужен какой-то javascript? Буду очень признателен, если у кого-то есть решение, потому что я не понимаю в javascript.
Спасибо, парни,
к сожалению, я не понимаю их обоих :( Вы можете мне помочь, сэр @TimGerhard?
Я отправил ответ, используя только css
@weBBer Я не понимаю кодировку jquery, сэр, но если вы можете добавить / изменить код jquery в моем предыдущем jsfiddle, это будет очень полезно. С уважением,
Привет, @icaks, я заметил, что у вашего вопроса все еще нет отмеченного решения. Это потому, что вы просто забыли или ваш вопрос все еще без ответа? Я был бы рад помочь вам в дальнейшем в вашем случае, в противном случае отметьте этот вопрос как решенный, поскольку он помогает другим пользователям лучше взаимодействовать с stackoverflow.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я сделал вам небольшой пример: надеюсь, это поможет: https://jsfiddle.net/pkbxupxc/4/
(Как-то видео не воспроизводится в stackoverflow (но работает на jsfiddle).
По сути, все, что я сделал, это поместил iframe внутри div, дав ему 100% ширину и высоту, а затем установил display: block при наведении и display: none по умолчанию.
.hoverMe {
background: coral;
height: 400px;
width: 100%;
position: relative;
}
.hoverMe iframe {
padding: 0;
}
.hidden {
display: none;
}
.hoverMe:hover iframe.hidden {
display: block;
}
.foreground {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
background: rgba (255, 255, 255, 0.7);
}<div class = "hoverMe">
<iframe class = "hidden" width = "100%" height = "100%" src = "https://www.youtube.com/embed/avmjunRX_xo" frameborder = "0" allow = "autoplay; encrypted-media" allowfullscreen></iframe>
<div class = "foreground">
<h1>
Hello World
</h1>
</div>
</div>спасибо, сэр ... но у меня вопрос, allow = "autoplay" предполагается, что видео будет автоматически воспроизводиться при наведении указателя мыши? но почему ваш пример видео не выполняет автовоспроизведение?
На самом деле я не знаю. Я только что нажал поделиться на YouTube, и это встроенный iframe по умолчанию, который они вам предоставляют
хорошо, сэр, я постараюсь найти решение проблемы с автовоспроизведением. С уважением,
Пожалуйста. Вы также можете использовать тег html <video>. Взгляните сюда w3schools.com/html/html5_video.asp
Я тоже хотел попробовать это на себе, поэтому создал именно то, что вам нужно, с помощью JQuery. Вот ссылка на него JSFIddle. Просто наведите указатель мыши на лицо персонажа.
<div class = "container col-md-10">
<div class = "top-intro" style = "position: relative;padding:20px;height:auto;margin:0 auto;font-family: arial;font-size: 12px;z-index: 99999;font-size: 15px;color: #000;text-align: center;border-radius: 10px;top:25px;background:rgba(255,255,255,0.5);">
Lorem ipsum sit amet dolor
</div>
</div>
<div class = "container-fluid">
<div class = "split left">
<div class = "centered">
<iframe width = "640" height = "360" src = "https://www.youtube.com/embed/N7ZmPYaXoic" frameborder = "0" allow = "autoplay; encrypted-media" allowfullscreen></iframe>
<img src = "https://www.w3schools.com/howto/img_avatar.png" alt = "Avatar woman">
<h2>Jane Flex</h2>
<p>Some text.</p>
</div>
</div>
<div class = "split right">
<div class = "centered">
<iframe width = "640" height = "360" src = "https://www.youtube.com/embed/cKhVupvyhKk" frameborder = "0" allow = "autoplay; encrypted-media" allowfullscreen></iframe>
<img src = "https://www.w3schools.com/howto/img_avatar2.png" alt = "Avatar man">
<h2>John Doe</h2>
<p>Some text here too.</p>
</div>
</div>
</div>
<script src = "https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<style>
.split {
height: 100%;
width: 50%;
position: fixed;
z-index: 1;
top: 0;
overflow-x: hidden;
padding-top: 20px;
}
.left {
left: 0;
background-color: #E9D94C;
}
.right {
right: 0;
background-color: #EA2029;
}
.centered {
position: absolute;
top: 50%;
left: 0;
text-align: center;
right: 0;
}
.centered img {
width: 100px;
border-radius: 50%;
}
.centered iframe {
display: none;
/* position: absolute; */
width: 100%;
/* left: 0; */
/* right: 0; */
height: auto;
}
</style>
<script>
$('.split').on('mouseover', function() {
$(this).find('img').hide();
$(this).find('iframe').show();
});
$('.split').on('mouseout', function() {
$(this).find('iframe').hide();
$(this).find('img').show();
});
</script>
Это сработает для вас:
Приведенный ниже фрагмент видео не воспроизводится в Переполнение стека, но хорошо работает на скрипке и других страницах:
.split {
height: 100%;
width: 50%;
position: fixed;
z-index: 1;
top: 0;
overflow-x: hidden;
padding-top: 20px;
}
.left_video,
.right_video {
height: 100%;
width: 50%;
position: fixed;
z-index: 0;
top: 0;
left: 0;
/* overflow-x: hidden; */
padding: 0px;
display: none;
pointer-events:none;
}
.right_video {
left: auto;
right: 0px;
}
.left {
left: 0;
background-color: #E9D94C;
}
.right {
right: 0;
background-color: #EA2029;
}
.centered {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
text-align: center;
}
.centered img {
width: 100px;
border-radius: 50%;
}
.split:hover+.left_video,
.split:hover+.right_video {
display: inline-block;
}
.split:hover {
background-color: transparent;
}<div class = "container col-md-10">
<div class = "top-intro" style = "position: relative;padding:20px;height:auto;margin:0 auto;font-family: arial;font-size: 12px;z-index: 99999;font-size: 15px;color: #000;text-align: center;border-radius: 10px;top:25px;background:rgba(255,255,255,0.5);">
Lorem ipsum sit amet dolor
</div>
</div>
<div class = "container-fluid">
<div class = "split left">
<div class = "centered">
<img src = "https://www.w3schools.com/howto/img_avatar.png" alt = "Avatar woman">
<h2>Jane Flex</h2>
<p>Some text.</p>
</div>
</div>
<iframe class = "left_video" src = "https://www.youtube.com/embed/J5OSRpRyl6g?autoplay=1" frameborder = "0" allow = "autoplay; encrypted-media" allowfullscreen></iframe>
<div class = "split right">
<div class = "centered">
<img src = "https://www.w3schools.com/howto/img_avatar2.png" alt = "Avatar man">
<h2>John Doe</h2>
<p>Some text here too.</p>
</div>
</div>
<iframe class = "right_video" src = "https://www.youtube.com/embed/NuIAYHVeFYs?autoplay=1" frameborder = "0" allow = "autoplay; encrypted-media" allowfullscreen></iframe>
</div>A working Fiddle with playing video : fiddle
Для автовоспроизведения iframe видео я использовал: ?autoplay=1 в последнем URL-адресе YouTube.
например: https://www.youtube.com/embed/J5OSRpRyl6g?autoplay=1
Надеюсь, это было полезно для вас.
вау, сэр ... вы сделали мой день, большое спасибо, сэр! Надеюсь, ты не расстроишься, если я спрошу тебя в будущем. хорошего дня сэр :)
@icaks рад, что смог вам помочь :), и, кстати, не нужно никому звонить в сэр .. Все студенты .. :)
@icaks, если мой код сработал для вас, или любой другой ответ, отметьте его как ответ.
Да, это возможно, но для этого вам понадобится javascript (или даже лучше: JQuery)