我確定這很簡單,但我似乎無法讓它工作。點擊後替換鏈接後的錨文本
我想單擊鏈接後替換錨鏈接。被替換的鏈接將來自data-href
值。
這裏的HTML
<header class="site-header">
<nav class="nav-primary">
<ul>
<li><a href="#services" class="home-nav" data-href="/services">Services</a></li>
<li><a href="#about" class="home-nav" data-href="/about">About</a></li>
<li><a href="#portfolio" class="home-nav" data-href="/portfolio">Portfolio</a></li>
<li><a href="#blog" class="home-nav" data-href="/blog">Blog</a></li>
</ul>
</nav>
</header>
<div class="site-inner">
<div class="content-site-wrap">
<section id="services">Lorem ipsum dolor sit amet</section>
<section id="about">Lorem ipsum dolor sit amet</section>
<section id="portfolio">Lorem ipsum dolor sit amet</section>
<section id="blog">Lorem ipsum dolor sit amet</section>
</div>
</div>
而且我在JS嘗試:
$(document).on('click', '.nav-primary a', function(){
$('a.home-nav').attr('href', data('href'));
});
不知道它的問題,但我使用此頁面上的jQuery的平滑滾動,從這樣當一個鏈接導航被點擊,它將滾動到頁面上的錨點。如果點擊了相同的鏈接,則會轉到由data-href
定義的鏈接。
簡而言之,我只需要點擊鏈接後替換鏈接#
。也許一個簡單的replace
函數可能工作。
<一個的onclick = 「this.href = this.getAttribute( '數據的href');返回false;」/ > –
@MagicLasso這改變了鏈接的'href',但是在初始點擊時,它並沒有跳轉到錨點,隨後的點擊也沒有進入'data-href'定義的鏈接。 –
啊,所以你想要去'data-href'中存儲的鏈接? –