【问题标题】:How to create confirmation page for external links如何为外部链接创建确认页面
【发布时间】:2016-11-28 02:42:31
【问题描述】:

我博客的一些下载链接来自一些外部站点。我想放一个这样的确认页面https://codyhouse.co/demo/simple-confirmation-popup/index.html 对于那些说使用外部网站内容的免责声明的链接。访问者可以同意继续或不同意返回我的页面。

如下所示:

  1. (www.example1.com) 点击这里下载(www.example2.com/download.zip)

  2. 转到 (www.example1.com/disclaimer.html) 免责声明页面。

  3. 同意(访问 www.example2.com/download.zip) 或者,不同意(访问 www.example1.com)

提前致谢。

【问题讨论】:

    标签: javascript php jquery html wordpress


    【解决方案1】:

    首先,您需要选择所有这些链接,例如;

    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;
    }
    

    【讨论】:

    • 非常感谢。这会很有帮助。
    【解决方案2】:

    如果你想用简单的 javascript 确认框实现同样的效果,可以通过下面的代码块来完成。

    function onClickEvent(){
       if(confirm("Your Disclaimer !!!")){
          //redirect to the url
          location.href = "http://www.example2.com/download.zip";
         }
       return;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-05
      • 2015-11-12
      • 1970-01-01
      • 2012-04-20
      相关资源
      最近更新 更多