2 回答

TA貢獻1946條經驗 獲得超3個贊
編輯:
正如您現在提到的,您的 TOC 鏈接都有一個href以哈希 (#) 開頭,因此:
$("a").each(function() {
//if the link is not a TOC link
if($(this).attr('href') && !$(this).attr('href').startsWith('#')) {
$(this).attr('target', '_blank');
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<h2>Jump Ahead!</h2>
<a href="#one">Header One</a>
<a href="#two">Header Two</a>
<h2><a name="one"></a>Header One</h2>
This is an example of a link that should open in a new tab <a href="https://example.com" class="blank">New Tab</a>.
<h2><a name="two"></a>header Two</h2>
在這個片段中,我遍歷所有<a>
標簽并檢查它們的 href 是否以#
. 如果沒有,我正在添加target _blank
屬性。
或者,如果所有 TOC 鏈接都在一個<h2>
標簽內,您可以使用以下選擇器來定位所有沒有<h2>
作為父標簽的錨標簽:
$("a:not(h2 a)").attr("target", "_blank");

TA貢獻1853條經驗 獲得超18個贊
新選項卡或窗口(取決于您的瀏覽器設置)
包括這個參數我你錨標簽(<a href...>)
target="blank"
所以這樣寫
<h2>Jump Ahead!</h2>
<a href="#one">Header One</a>
<a href="#two">Header Two</a>
<h2><a name="one"></a>Header One</h2>
This is an example of a link that should open in a new tab <a href="https://example.com" target="blank">New Tab</a>.
<h2><a name="two"></a>header Two</h2>
添加回答
舉報