在转到外部站点之前重定向到中间页面

时间:2010-02-10 21:06:10

标签: .net javascript html redirect

这是我的问题。我在CMS中工作,用户可以创建超链接(内部和外部)我想知道是否有一种很好的方法可以检查用户在导航到外部站点时何时单击链接。如果他们使用后退/前进按钮,在地址栏中键入内容等,我不想做任何事情。我只是想将它们重定向到我们网站中的一个页面,该页面带有他们真正想要去的地址。查询字符串并显示一条5秒(左右)的消息,告诉他们他们要离开我们的网站,我们不对那里有什么等等负责。因为最终用户将负责生成大部分链接,教他们实际点中间页面上的链接不太理想,所以我想知道是否有一个使用javascript的简单解决方案。

3 个答案:

答案 0 :(得分:1)

您可以使用jQuery为您网站上所有外部链接(从http开头,减去一些特殊情况)附加点击事件,然后可以显示模态对话框或设置{{1您的中间页面(您可以使用外部URL的查询字符串var)。您可以创建自定义选择器以获取外部链接,然后附加行为:

window.location

答案 1 :(得分:1)

我想我会找到类似于wsanville的回答。除了我将向所有锚标签添加点击事件,然后检查他们的href值是否在我们的域内。

类似于:

$('a').click(function() {
    if this.href.indexOf('mydomain.com'!=-1)
      return true;
    else{
      window.location = "intermediate.html?href=" + this.href;
    }
});

任何人都知道将事件附加到页面上的每个锚标签会产生什么样的性能?

答案 2 :(得分:0)

您应该在用户保存数据时用自己的特殊链接(例如http://yoursite.com/redirect.ashx?http://external.com)替换用户的链接,或者更好的方式,当您向其他用户提供用户生成的内容时。