Javascript 通过Jquery更改操作后的链接
我有一个下载链接,在用户下载后,我想删除下载链接并更改文本。我能够做到这一点,但它做得太快,用户将无法下载exe文件。如果我以某种方式拖延,这会是一个解决办法吗?有没有更好的方法来做我正在做的事情 这是我的JSJavascript 通过Jquery更改操作后的链接,javascript,jquery,events,Javascript,Jquery,Events,我有一个下载链接,在用户下载后,我想删除下载链接并更改文本。我能够做到这一点,但它做得太快,用户将无法下载exe文件。如果我以某种方式拖延,这会是一个解决办法吗?有没有更好的方法来做我正在做的事情 这是我的JS function removeLink(){ try{ $('#downloadLink').text("Thank You For Downloading This Software!"); $('#downloadLink').attr('hr
function removeLink(){
try{
$('#downloadLink').text("Thank You For Downloading This Software!");
$('#downloadLink').attr('href', 'javascript:void(0)');
}
catch(err){
alert(err.message);
}
}
链接
我也知道这不是一种非常“安全”的方式,因为我只是使用javascript,但这主要是针对普通用户的。类似这样的吗
$('#downloadLink').click(function() {
$(this).replaceWith('<span>Thanks for downloading...</span>');
});
$('downloadLink')。单击(函数(){
$(this.replaceWith('谢谢下载…');
});
如果仍然存在无法工作的问题,请放置一个
window.location='download.exe'代码>位于单击功能的顶部。因此-知道这不是一种安全的方法-有什么问题:
$('a').on('click', function() {
$(this).text('Thank You For Downloading This Software!').removeAttr('href');
});
将选择器更改为任何适用的值,而不是$('a')
您可能不需要函数removeLink(),因为您没有调用它。改用
$(document).ready(){
});
还有你的超时问题
使用jQuery的
另一件事是你正在打电话#downloadLink。。。别忘了将ID添加到标记中
编辑:
正如其他人所说,您可能只想在jQuery中完成整个功能。问题是,它没有机会下载。它将更改文本和href,但exe文件不会下载,我假设这是因为javascript太快(?)请确保您已经覆盖了您的基础-如果用户单击下载,取消下载,然后想再试一次,会发生什么?这非常有效。我不得不将window.location放在函数的顶部,但是replaceWith()是一个我不知道的很酷的函数!谢谢
$(document).ready(){
});