У меня есть элемент video
. Я хочу, чтобы некоторые кнопки управления отображались, когда пользователь зависает над видео, что позволяет им приостанавливать/воспроизводить и отключать звук/включать звук. Вот мой HTML, CSS и JQuery:Остановить событие 'out' от запуска при зависании над другим элементом, наложенным на первый
HTML
<video autoplay muted>
<source src="<?=get_template_directory_uri()?>/video/bfvideo.mp4" type="video/mp4">
<img src="<?php the_field('hero_image'); ?>" class="hero-text img-res" alt="<?php the_field('hero_image_alt_text'); ?>"/>
</video>
<div class="videoMute videoButton">M</div>
<div class="videoPause videoButton">P</div>
JS
heroVideo.hover(
function() {
// In
console.log('In');
$('.videoButton').fadeIn(100);
//heroVideo.prop('muted','');
},
function() {
// Out
console.log('Out');
$('.videoButton').fadeOut(100);
//heroVideo.prop('muted','true');
}
);
CSS
.videoButton {
background: #ccff00;
display: inline-block;
height: 50px;
width: 50px;
position: absolute;
z-index:9999;
bottom:50px;
text-align:center;
cursor:pointer;
display:none;
}
.videoMute {
left:50px;
}
.videpPause {
left:250px;
}
но тонны появляются и исчезают по желанию, когда я нахожусь в и из видео, но когда я наводил курсор на кнопки, я технически зависаю от видео, потому что вместо этого я курсирую на кнопках (хотя я все еще в курсе видео на экране). Поэтому кнопки исчезают, когда я навис над ними.
Есть ли способ предотвратить это? Я хочу, чтобы кнопки отображались всякий раз, когда я нахожусь в области видео, независимо от того, является ли мой курсор фактически на этом элементе.
Если вам нужна пауза/воспроизведение, отключение звука/громкость, полноэкранный режим; вы можете включить элементы управления браузером HTML5 по умолчанию. – pol
@pol - Конечно, но они немного уродливые. Я пытался получить что-то более строчное с макетом сайта (ps. Я знаю, что текущий CSS далек от прекрасного - это всего лишь тестовый макет, прежде чем я его украшу, как только я решил эту проблему). – BFWebAdmin
, если вы оберните видео и кнопки в одном и том же контейнере div и используйте события зависания на контейнере, это значительно облегчит вашу проблему. – klikas