我博客的部分下载链接来自某些外部网站。我想放一个这样的确认页面https://codyhouse.co/demo/simple-confirmation-popup/index.html 对于那些链接说一些使用外部网站的内容的免责声明。访问者可以同意继续或不同意返回我的页面。
如下所示:
(www.example1.com)点击此处下载(www.example2.com/download.zip)
转到(www.example1.com/disclaimer.html)免责声明页面。
同意(访问www.example2.com/download.zip) 或者,不同意(访问www.example1.com)
提前致谢。
答案 0 :(得分:0)
首先,您需要选择所有这些链接,例如;
var ele = document.querySelectorAll('a[target]');
这将为您提供所有外部链接的数组(在这种情况下,我将它们定义为具有目标属性的任何锚链接,但您可以使用任何内容)
你需要阻止每个人的默认行为(这样他们在你展示你的免责声明之前就不会去任何地方),例如;
for(var i = 0; i < ele.length; i++) {
ele[i].onclick = function(e) {
e.preventDefault();
}
};
最后在preventDefault之后,你需要显示你的弹出窗口然后在那里发送用户,如果他们没问题,如果他们不正常则不做任何事情(关闭弹出窗口)。在这种情况下,我只是使用确认弹出窗口,但您可以根据需要将其添加到任何dom弹出窗口中:
if(confirm('really go to this link?')) {
window.location = this.href;
}
答案 1 :(得分:0)
如果你想通过简单的javascript确认框实现同样的功能,可以通过下面的代码块完成。
function onClickEvent(){
if(confirm("Your Disclaimer !!!")){
//redirect to the url
location.href = "http://www.example2.com/download.zip";
}
return;
}