0

所以我希望能够使用 jquery 或类似的东西来强制所有外部链接

一个。Opened in a new window (我想我已经从这里开始了)

$(document).ready(function() {
    $('a[href^="http://"]').filter(function() {
        return this.hostname && this.hostname !== location.hostname;
    }).attr('target', '_blank');  
});

湾。在顶部使用自定义工具栏(iframe?)打开(如 reddit 工具栏 imgur.com/76YCS.jpg )

4

2 回答 2

1

在实施方面,您实际上无法链接到外部站点并添加工具栏。

Reddit 通过将外部链接重写为附加哈希的内部链接来实现这一点。哈希存储在他们的数据库中并用作标识符。当一个链接被访问时,一个框架集被加载到一个框架中的工具栏,并且该哈希的相应外部 URL 被加载到主框架中。

如果您查看屏幕截图,您会看到 URL 是 reddit.com/tb/bk40q

实际上,这不是最适合在客户端处理的问题。

于 2010-03-30T16:31:36.333 回答
0

我已经完全使用 Jquery、Html 和 Css 做到了这一点

首先,您将工具栏应用于脚本中除外部之外的所有链接,即:global.js

$("a[href^='http:']").not("[href*='www.YOURDOMAIN.com']").each(function(){ 
    var tempurl = 'http://www.YOURDOMAIN.com/thebar/thebar.html?iframe=';
    var $this = $(this);
   // We grab the current href here, and then combine it with the bar url
    var currenturl = this.getAttribute("href");
    var href = tempurl + currenturl;
    $this.attr('href', href ); 
});

如果需要,我可以在此处发布 iframe 的所有代码。(只是很多)

于 2010-04-22T14:42:17.450 回答