簡體   English   中英

在所有鏈接中定位 _blank

[英]Target _blank in all Link

我剛剛用目標_self制作了一個 html 頁面

但是現在我的鏈接太多了,我想將所有鏈接目標更改為_blank ,這對我來說很難做到。 是否有任何 javascript 適用於所有只寫 1 次?

因為我的代碼太長,而且所有鏈接都需要修改太多次。 有什么竅門嗎?

像這樣

<a href="http://www.google.com"></a>
<a href="http://www.facebook.com"></a>
<a href="http://www.gmail.com"></a>
<a href="http://www.twitter.com"></a>
<a href="http://www.stackoverflow.com"></a>
<a href="http://plus.google.com"></a>

把它放在你的<head>

<base target="_blank">

除非指定了target否則它將使頁面上的所有 URL 在新頁面中打開。

這是一個僅限 HTML5 的功能,我是從Google 的 io-2012-slides 幻燈片包中學到

為了回答您的問題,jQuery 使這變得簡單:

<script src="//ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>

<script>
    $(function() {
        $('a[href]').attr('target', '_blank');
    });
</script>

這不會修改任何沒有href屬性的<a>標簽。

在普通 JS 中也很簡單:

var links = document.getElementsByTagName('a');
for (var i=0, len=links.length; i < len; i++) {
  links[i].target = '_blank';
}

(將此腳本放在結束</body>標簽之前,或者在任何情況下放在頁面上的所有<a>標簽之后。)

如果您無法使用 HTML 編輯器進行簡單的find and replace ,您可以使用 jQuery 執行以下操作:

$('a').click(function() {
  $(this).attr('target', '_blank');
});

這將自動做一個target="_blank"為每a被點擊並在新窗口或新標簽中打開(你必須在這個無法控制的,這取決於用戶的瀏覽器設置)。

小提琴

希望這可以幫助!!

我不得不處理這個很多次。 僅作記錄:

我認為沒有必要讓 javascript 執行此任務,但這是另一種方法,您可以使用編輯器的查找/替換功能並執行以下操作(前提是您的鏈接采用該格式):

  • 打開您的編輯器並查找<a href

    查找 <a href

  • 在替換字段中輸入<a target="_blank" href

    代替

  • 代替。

    文本已替換

或者您可以通過查找.com">並將其替換為.com" target="_blank">將其附加到標簽的末尾。 您可以在所有具有查找/替換功能的編輯器上執行此操作。 這只是尋找模式以及如何替換它們的問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM