gpt4 book ai didi

javascript - 如何在不让列表/内容切换的情况下让我的静音取消静音功能在视频叠加元素上工作?

转载 作者:太空宇宙 更新时间:2023-11-04 06:16:56 25 4
gpt4 key购买 nike

该网站是一个简单的登录页面,带有自动播放的英雄视频背景,当您单击搜索框(位于视频的中心)时,它会取消静音并播放视频中的音频。我们的静音/取消静音按钮效果很好,但他们希望点击视频也能静音/取消静音。每当我将 video-overlay 的元素添加到该函数时,它上面的所有内容都可以作为我们不想要的静音/取消静音,它会破坏我们的搜索工具。

我已经尝试创建一个专门用于静音/取消静音的元素,但它仍然位于顶部,我已经尝试将不同的类添加到静音/取消静音功能 (Hero.onMuteClick)。我查看了 stopPropogation 但我无法弄清楚。

https://jsfiddle.net/kevingsp/9xhzr1by/2/

我希望点击 video-overlay 来静音/取消静音视频中的音频。

感谢阅读!

编辑/更新我按照下面的步骤操作并且成功了,我在 CSS 中使用 pointer-events:none; 使原来的静音/取消静音按钮不可点击,因此背景/覆盖层只能控制它。

谢谢!

最佳答案

为什么不用focus和focusout。看看下面的片段。

init: function() {
$(".muteunmute").click(function(e) {
Hero.onMuteClick();
});
$('#inputSearch').on('focus',()=>Hero.unmute() ).on('focusout',()=>Hero.mute() );
}

编辑

对不起,我误会你了。

希望下面的代码片段能满足您的需求 :)问题是所有元素都是“.video-overlay”的子元素,所以你必须检查哪个是真正的目标。

init: function() {
$(".muteunmute").click(function(e) {
Hero.onMuteClick();
});
$('.video-overlay').click(function(e){
if($(e.target).hasClass('video-overlay-content'))
{
Hero.onMuteClick();
}
});
}

关于javascript - 如何在不让列表/内容切换的情况下让我的静音取消静音功能在视频叠加元素上工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55871998/

25 4 0
文章推荐: javascript - 使用 Jquery 控制
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com