如何用src =“ name2”替换src =“ name1”?

时间:2018-09-24 14:07:33

标签: javascript html

所有人!

我有个主意,但我不知道如何实现。

如何确保在按ctrl + shift +的同时也按f12键更改了html代码的特定部分?

例如:SRC =“ error.MP4上的SRC =” video.MP4“

谢谢!

更新-9.24.18

您需要进行设置,以使用户难以从scr =“ video.mp4”

复制链接

- Aison

1 个答案:

答案 0 :(得分:-1)

这是您可以执行此操作的一种方法:

<video id="someVideo" src="somfile.mp4" />

<script>
function KeyPress(e) 
{
    var evtobj = window.event ? event : e;
    // 73 = i
    if (evtobj.keyCode == 73 && evtobj.ctrlKey && evtobj.shiftKey) 
    {
        document.getElementById('someVideo').src = "error.mp4";
    }
}

// On keypress, activate our function
document.onkeydown = KeyPress;
</script>

但是,正如我在评论中提到的那样,这绝不会阻止用户下载mp4文件。

用户仍然可以:

  

右键单击,检查元素

     

打f12

     

在访问您的网站之前打开“检查元素”

     

保存您的网页

     

仅保存您网页中的视频

     

禁用JS /覆盖您的JS。

     

无需使用网络浏览器即可访问您的网页(获取/保存您的网页)

还有其他方法,这简直就是我的脑袋。

编辑以下评论:

您可以改用html5 <canvas>

这将隐藏源。但是,如果用户禁用了JS,它将导致视频不再工作。

示例(您必须添加自己的播放按钮,或更改脚本以自动开始视频):

<!-- You can hide this element anywhere in your hmtl. It will not be visbile (via CSS) -->
<!-- note: I used `muted="muted"` because otherwise you will get an error when starting the video without a user action -->
<video id="someVideo" muted="muted" controls> 
    <source src="http://clips.vorwaerts-gmbh.de/VfE_html5.mp4" type="video/mp4">
</video>

<!-- canvas will display the video -->
<canvas id="myCanvas"></canvas>

<script>
document.addEventListener('DOMContentLoaded', function()
{
    var hiddenVideo = document.getElementById('someVideo');
    var canvas = document.getElementById('myCanvas');
    var context = canvas.getContext('2d');

    var cw = Math.floor(canvas.clientWidth);
    var ch = Math.floor(canvas.clientHeight);
    canvas.width = cw;
    canvas.height = ch;

    hiddenVideo.addEventListener('play', function(){
        draw(this,context,cw,ch);
    },false);

    hiddenVideo.onloadstart  = function(){
        this.play();
    };

},false);

function draw(v,c,w,h) 
{
    if(v.paused || v.ended) 
        return false;
    c.drawImage(v,0,0,w,h);
    setTimeout(draw,20,v,c,w,h);
}

</script>

<style>
    #someVideo
    {
        display: none;
        width: 200px;
        height: 200px;
    }

    #myCanvas
    {
        width: 200px;
        height: 200px;
    }
</style>

由于您要向用户提供mp4文件,因此不能阻止用户拥有mp4文件。