Javascript 如何使.MP3音频播放器,防止右键单击另存为目标。。。使用Jquery
我一直在建立一个网站来销售我的乐器/音乐,并试图找到一种方法来创建一个简单的.MP3音频播放器按钮,防止用户右键单击“目标另存为…”。。。同时隐藏实际的.MP3文件链接。我还需要它一次只播放一个声音(防止声音重叠)。我发现,如果能听到,它很可能被下载 我发现的方法(在stackoverflow社区的帮助下)并不是100%完全可以防止用户查找和下载你的.mp3文件,但它会让它变得更加困难 步骤Javascript 如何使.MP3音频播放器,防止右键单击另存为目标。。。使用Jquery,javascript,jquery,audio,hash,Javascript,Jquery,Audio,Hash,我一直在建立一个网站来销售我的乐器/音乐,并试图找到一种方法来创建一个简单的.MP3音频播放器按钮,防止用户右键单击“目标另存为…”。。。同时隐藏实际的.MP3文件链接。我还需要它一次只播放一个声音(防止声音重叠)。我发现,如果能听到,它很可能被下载 我发现的方法(在stackoverflow社区的帮助下)并不是100%完全可以防止用户查找和下载你的.mp3文件,但它会让它变得更加困难 步骤 (可选)第一步是将声音文件的名称转换为一些令人困惑的内容,如MD5哈希(这不是100%必需的,但会让它
<p><span class="play" key="cef83b993c716dd543b6fa4f053cc4a4">Play</span></p>
<p><span class="play" key="cbbe0ab9d89c68f24f4fadff907fa720">Play</span></p>
.play
{
color:green;
cursor:pointer;
}
.pause
{
color:red;
cursor:pointer;
}
$(".play").on('click',function(){
var key = $(this).attr('key');
EvalSound(key);
var this_play = $(this);
$(".play").each(function() {
if ($(this)[0] != this_play[0]) {
$(this).removeClass("pause");
}
});
$( this ).toggleClass( "pause" );
});
var thissound = new Audio();
var currentKey;
var interval;
function EvalSound(key) {
if(currentKey !== key)
thissound.src = "http://99centbeats.com/beats/" + key + ".mp3";
currentKey = key;
if (thissound.paused) {
thissound.play();
interval = setInterval(function() {
if(thissound.currentTime == thissound.duration) {
clearInterval(interval);
$('.play').removeClass("pause");
}
},100);
} else {
thissound.pause();
thissound.currentTime = 0;
currentPlayer = thissound;
clearInterval(interval);
}
}
(我会这样做,当点击css更改时,您可以编辑它,使其具有背景图像按钮或任何您喜欢的内容,例如,这只是简单的颜色更改)
JQuery:
<p><span class="play" key="cef83b993c716dd543b6fa4f053cc4a4">Play</span></p>
<p><span class="play" key="cbbe0ab9d89c68f24f4fadff907fa720">Play</span></p>
.play
{
color:green;
cursor:pointer;
}
.pause
{
color:red;
cursor:pointer;
}
$(".play").on('click',function(){
var key = $(this).attr('key');
EvalSound(key);
var this_play = $(this);
$(".play").each(function() {
if ($(this)[0] != this_play[0]) {
$(this).removeClass("pause");
}
});
$( this ).toggleClass( "pause" );
});
var thissound = new Audio();
var currentKey;
var interval;
function EvalSound(key) {
if(currentKey !== key)
thissound.src = "http://99centbeats.com/beats/" + key + ".mp3";
currentKey = key;
if (thissound.paused) {
thissound.play();
interval = setInterval(function() {
if(thissound.currentTime == thissound.duration) {
clearInterval(interval);
$('.play').removeClass("pause");
}
},100);
} else {
thissound.pause();
thissound.currentTime = 0;
currentPlayer = thissound;
clearInterval(interval);
}
}
(您可以将其放在一个.js文件中,并将其命名为真正令人困惑的md5哈希,
只需确保它位于HTML之后即可工作。)
此方法并非100%完美,不会阻止所有用户下载您的.mp3文件,但它不会像右键单击“目标另存为”那样简单。如果你想靠卖音乐为生,你可能想用这个。事实上,似乎那些愿意付费的人,会不计代价地付费,而那些不付费下载的人也会不计代价地这么做,所以最终你不会真的停止太多,但这是我想要学习和实现的技术。我决定分享这个,因为我真的找不到任何地方可以做到这一点,你可能想做一些不同的事情,但这可能会给你一些想法。感谢那些帮助我编写代码的人
一些stackoverflow/jsfiddle帖子有助于:
你永远无法做到100%的证明,因为你需要提供数据,所以它总是可以被捕获。
尽管这不是一个真正的问题,但看起来还是很模糊。你永远无法做到100%证明,因为你需要提供数据,所以它总是可以被捕获的。
尽管这不是一个真正的问题,但看起来还是很模糊。你永远无法做到100%证明,因为你需要提供数据,所以它总是可以被捕获的。
尽管这不是一个真正的问题,但看起来还是很模糊。你永远无法做到100%证明,因为你需要提供数据,所以它总是可以被捕获的。
不过做得不错,看起来很模糊,虽然这不是一个真正的问题。把这首歌分成30秒或1分钟的片段,然后按顺序播放怎么样
谷歌音乐就是这样做的。不会停止下载,但95%的用户会发现很难将它们合并到单个文件中 把这首歌分成30秒或1分钟的片段,然后按顺序播放怎么样
谷歌音乐就是这样做的。不会停止下载,但95%的用户会发现很难将它们合并到单个文件中 把这首歌分成30秒或1分钟的片段,然后按顺序播放怎么样
谷歌音乐就是这样做的。不会停止下载,但95%的用户会发现很难将它们合并到单个文件中 把这首歌分成30秒或1分钟的片段,然后按顺序播放怎么样
谷歌音乐就是这样做的。不会停止下载,但95%的用户会发现很难将它们合并到单个文件中 这是个好主意!谷歌音乐实际上有助于激发这一想法。谢谢Maksym Kozlenko!这是个好主意!谷歌音乐实际上有助于激发这一想法。谢谢Maksym Kozlenko!这是个好主意!谷歌音乐实际上有助于激发这一想法。谢谢Maksym Kozlenko!这是个好主意!谷歌音乐实际上有助于激发这一想法。谢谢Maksym Kozlenko!这是真的,谢谢Bas Van Stein!这是真的,谢谢Bas Van Stein!这是真的,谢谢Bas Van Stein!这是真的,谢谢Bas Van Stein!