Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在HTML5视频中禁用右键单击?_Javascript_Jquery_Html_Wordpress - Fatal编程技术网

Javascript 在HTML5视频中禁用右键单击?

Javascript 在HTML5视频中禁用右键单击?,javascript,jquery,html,wordpress,Javascript,Jquery,Html,Wordpress,我在我的网站上使用HTML5视频播放器,我想禁用右键单击我的所有视频 我尝试使用此代码,但不起作用: <script type="text/javascript"> $(document).ready(function(){ $('#videoElementID').bind('contextmenu',function() { return false; }); }); </script> $(文档).ready(函数(){ $('#videoE

我在我的网站上使用HTML5视频播放器,我想禁用右键单击我的所有视频

我尝试使用此代码,但不起作用:

<script type="text/javascript">
$(document).ready(function(){
$('#videoElementID').bind('contextmenu',function() { return false; });
});
</script>

$(文档).ready(函数(){
$('#videoElementID').bind('contextmenu',function(){return false;});
});
我正在使用WordPress,并将上面的函数放在
header.php
文件中

如何检查我的播放器的
#videoElementID
名称?我尝试了页面上的所有DIV元素,但仍然不起作用。我知道这不会阻止用户下载我的视频,但我真的需要让它发挥作用

 $(document).ready(function() {
    $("video").bind("contextmenu",function(){
        return false;
        });
 } );

这将禁用右键单击该页面中的所有视频元素。希望这有帮助。

右键单击菜单是web浏览器的一项功能。要禁用它,您可以尝试将以下JavaScript添加到web页面的标题部分,就在标记之前

jQuery(document).ready(function(){
    jQuery('video').bind('contextmenu',function() { return false; });
});

我最喜欢的方法是将
oncontextmenu=“return false;”“
添加到视频标记中,该方法简单快捷,不需要javascript

比如说:

<video oncontextmenu="return false;" id="my-video-player" width="854" height="480" controls autoplay>
  <source src="https://example.com/link-to-my-video.mp4" type="video/mp4">
</video>

它对我来说很好用

$(document).bind("contextmenu",function(ev){
    if(ev.target.nodeName=='VIDEO')
    {
        return false;
    }
});

最好在HTML5的视频标签下使用
onContextMenu={(e)=>e.preventDefault()}

我最近试图禁用视频元素的右键单击。这个代码对我有用

 document.querySelector("video").addEventListener("contextmenu", (event) => {
      event.preventDefault();
    });

视频播放器是否正在动态加载到DOM中?我刚刚尝试过,但仍然无法工作。我测试了Firefox和Chrome。有什么想法吗?@user3517251-是只针对视频元素还是所有其他元素。我的意思是,这是否也不起作用
$(document).bind(“contextmenu”,function(){return false;})这也不起作用。它没有效果。也许有什么东西挡住了它。有什么想法吗?我通过在视频的DIV元素中添加以下值,成功地实现了它。这是视频代码。它在Firefox、Chrome和IE中工作得很好。理想情况下,它应该可以工作。。。您可以检查jquery.js文件是否已加载。您可以通过在
$(document.ready(function(){})中放置-
警报(“jquery已加载”)
来完成此操作我刚刚发现,您可以通过右键单击,按住鼠标按钮,轻轻移动鼠标,然后释放来规避此问题。。。不知何故,它仍然会打开上下文菜单!?注意,这确实需要JavaScript!
返回false是JavaScript。如果禁用JavaScript,上下文菜单将正常显示。您能为答案添加解释吗?为什么更好?更好的办法是什么?如果你在一个页面上有多个视频,我会用forEach将它改为querySelectorAll。