使用 jQuery 更改所有外部链接
Change all external links using jQuery
我想更改博客上的所有外部链接(blogspot在这里,这就是我寻找jQuery代码的原因),而不更改博客的发布,因为如果我这样做,我需要做很多工作。
例如,我的网站是example.com
.我想将所有外部链接更改为
http://example.com/p/go.html?url=http://externallink.com
无需对我的博客文章进行任何更改。我没有任何想法可以开始。
已解决:https://gist.github.com/2342509 谢谢大家:D我只需要稍微改变一下。
在jQuery中,你可以尝试:
// DOM ready
$(function(){
$('a[target="_blank"]').prop('href', 'http://example.com/p/go.html?url=http://externallink.com');
});
当然,这只有在您在 HTML 中设置了 target="_blank"
属性/属性并且您希望所有链接打开相同的 url 时才有效。这个想法源于您希望在不同的选项卡/窗口中自动打开外部链接的事实。
如果这不是必需的功能,则可以以类似的方式使用自定义data-
属性。唯一的区别是您需要循环每个链接,并从中获取数据。
// DOM ready
$(function(){
$('a[data-href]').each(function(){
var anc = $(this),
href = anc.prop('href'),
dataHref = anc.data('href');
anc.prop('href', href + '?url=' + dataHref);
});
});
网页示例:
<a href="http://example.com/p/go.html" data-href="http://externallink.com">external link</a>
现在,如果仍然不是您想要的,您可能需要添加更多信息。
离开@Tim Vermaelan的答案,你可以试试这个,这将检查每个不以你网站的URL开头的链接,而不依赖于它是target="_blank"
:
$('a:not([href^="http://yoursite.com"])').prop('href', 'http://example.com/p/go.html?url=http://externallink.com');
相关文章:
- 外部链接的Javascript文件赢得't执行,但函数有效
- Cordova包装应用程序内部链接加载在应用程序中,外部链接加载在浏览器中
- 正在创建网页,并希望将外部链接调用为html和css
- 为在新窗口中打开外部链接创建异常
- 将外部链接编写到js文件中
- 打开除域之外在新选项卡中打开的所有外部链接
- 具有http外部链接的SSL网站
- 什么'这是使用jQuery将一些文本锚定到外部链接的最简单方法
- 如何自动添加target=“_空白“;仅限于外部链接
- javascript外部链接文件的可接受数量是多少
- 使用 jQuery 更改所有外部链接
- 将$ionicLoading.show()用于外部链接的方法
- 可以't在dropbox托管网站中打开外部链接
- 对于JQM中的外部链接,动态添加的链接上的触发器('click')不会传播
- 如何使用SheetJS从外部链接解析Excel文件(AmazonS3)
- 当外部链接打开Tab时,页面滚动到顶部也固定了导航栏
- 如何检测用户点击了内部或外部链接
- 如何从外部链接JS文件
- 带有标签的外部链接会延迟滚动事件
- 从inappbrowser中的链接打开mobilesafari中的外部链接