在我的網站上,我有許多外部鏈接以及內部鏈接。 我想用javascript或w/e中的某種解決方案檢測外部鏈接並在新選項卡中打開它們,但會在同一選項卡中打開內部鏈接。 謝謝! =)如何在新標籤中打開外部鏈接
回答
function getXterlinks()
{
var Xterlinks = document.getElementsByTagName('A');
for (var i=0;i<Xterlinks.length;i++)
{
var eachLink = Xterlinks[i];
var regexp_isYourdomain="your-domain.com";
var regexp_ishttp=/(http(.)*:\/\/)/;
if((eachLink.href != null) && (eachLink.href.match(regexp_isYourdomain) == null) && eachLink.href.match(regexp_ishttp)!=null)
{
eachLink.target ="_blank";
}
}
}
請注意,由瀏覽器決定是否應在新窗口或新選項卡中打開鏈接。你不能強制一個行爲或其他使用html或JavaScript的行爲。 – 2010-08-28 21:23:57
@Jan - true,但使用'target =「_ blank」'是做這件事的標準方法。儘管如此,你的評論仍然存在。 – 2010-08-28 21:25:16
工作!謝謝! :D – MKv4 2010-08-28 21:44:28
是啊,jQuery的仍然JavaScript的。如何:
$('a[href^="http://your-domain.com"]').attr("target", "_self");
$('a').not('a[href^="http://your-domain.com"]').attr("target", "_blank");
不知道第二,但你明白了。
我爲我的個人網站寫了這個解決方案。只要你喜歡jQuery(你應該,imho),你可以將它包含在一個普通的js文件中,然後忘掉它。它將與動態內容一起工作,並且如果您設置target =「_ blank」,則不會強制在當前選項卡中打開內部鏈接。
$(function() {
$('body').on('click', 'a', function() {
var currentHost = document.location.protocol+'//'+document.location.hostname;
if (this.href.indexOf(currentHost) != 0 && (this.href.indexOf('http') == 0 || this.href.indexOf('ftp') == 0)) {
window.open(this.href, '_blank');
return false;
}
});
});
注:如果您使用jQuery < 7,使用.bind()來代替。對()
看到它在行動上http://www.seanknutson.com。
- 1. JavaScript:在新標籤中打開鏈接
- 2. 點擊許多新標籤打開許多外部鏈接
- 3. 在外部標籤中打開Sharepoint鏈接
- 4. 如何在博主中的新標籤中打開鏈接
- 5. 如何在新標籤中打開2個鏈接?
- 6. Sharepoint鏈接 - 如何在新標籤頁/窗口中打開
- 7. 我如何在新標籤中打開一個隨機鏈接?
- 8. 鏈接打開標籤
- 9. 在標籤頁中打開鏈接
- 10. JavaScript的 - 在標籤中打開鏈接
- 11. 在一個標籤中打開鏈接
- 12. 鏈接何時應該在新標籤頁/窗口中打開?
- 13. 鏈接與目標=「_ blank」未在Chrome的新標籤中打開
- 14. 在新標籤中打開間接URL鏈接
- 15. 在新標籤中打開鏈接在IE10中不起作用
- 16. html/javascript:隱藏鏈接目標並在新標籤中打開鏈接
- 17. 捕獲「在新標籤中打開鏈接」和「在新窗口中打開鏈接」事件
- 18. 打開外部鏈接託管在QWebKit
- 19. 在後臺打開外部鏈接
- 20. HTML:如何強制鏈接在新標籤中打開,而不是新窗口
- 21. 如何使用PHP重定向在新標籤中自動打開外部鏈接?
- 22. Mediawiki在新窗口中打開外部鏈接
- 23. 如何在另一個選項卡中打開外部鏈接?
- 24. 如何在離子應用程序中打開外部鏈接
- 25. 在新窗口中打開鏈接或標籤
- 26. php + javascript在新的weindow(標籤)中自動打開鏈接
- 27. 在新標籤頁中打開多個鏈接的宏
- 28. 鏈接PDF以在新標籤中打開從PDF
- 29. 無法在新標籤中打開鏈接
- 30. 在同一窗口的新標籤頁中打開鏈接
您的網站鏈接是否有一些常見模式 – Hulk 2010-08-28 21:19:21
是的,如果它們都包含「blogspot.com」,則其他所有內容都是外部的。 – MKv4 2010-08-28 21:30:07