假设在网页上有一个链接,允许用户以某种文件格式下载应用程序的当前状态,如下所示:
<a href="example.com/download/url" id="download-link">Download</a>
我可以轻松收听click事件,并确保在下载请求发出之前将最新状态推送到服务器,如下所示:
$('#download-link').on('click', function(event) {
event.preventDefault();
pushStateToServer().done(function(){
window.location.href = event.target.href;
});
});
但是,如果用户右键单击该链接并选择&#34;将链接保存为&#34;
,则此操作无效。有没有办法让我抓住这个事件?
答案 0 :(得分:2)
不,我很确定你无法做到这一点。
您唯一可以捕获的是contextmenu
,当您右键单击该链接时,但没有办法找出上下文菜单中的哪个链接被点击。
这就像你要接近一样。
$('#download-link').on('contextmenu', function(event) { ... });