Javascript/Jquery 使用正则表达式更改锚点 link
Javascript/Jquery change anchor link using regex
<ul id="nav">
<li><a href="index.html#section1">Natural Beauty</a></li>
<li><a href="index.html#section2">Beginings</a></li>
<li><a href="index.html#section3">Earth's Purity</a></li>
<li><a href="index.html#section4">Bottling Goodness</a></li>
<li><a href="index.html#section5">Drink to Health</a></li>
<li><a href="index.html#section6">Minerals</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
我寻找了可能 js/jquery 如何像在 href 中一样跳转到页面,但页眉只会打印 index.html。
我试图像这样更改 href:
$(document).ready(function(){
$('a').each(function(){
var value = $(this).attr('href');
var x = 'index.html'+ (#[a-z\d-]+);
$(this).attr('href', value.replace(x,'index.html'));
});
});
它没有成功,因为页眉仍然打印 index.html#section。这里真的需要帮助。谢谢
连接两个正则表达式模式时需要使用正则表达式构造函数。更改以下语句,
var x = 'index.html'+ (#[a-z\d-]+);
$(this).attr('href', value.replace(x,'index.html'));
到,
$(this).attr('href', value.replace(/index\.html#[a-z\d-]+/,'index.html'));
<ul id="nav">
<li><a href="index.html#section1">Natural Beauty</a></li>
<li><a href="index.html#section2">Beginings</a></li>
<li><a href="index.html#section3">Earth's Purity</a></li>
<li><a href="index.html#section4">Bottling Goodness</a></li>
<li><a href="index.html#section5">Drink to Health</a></li>
<li><a href="index.html#section6">Minerals</a></li>
<li><a href="#">Contact Us</a></li>
</ul>
我寻找了可能 js/jquery 如何像在 href 中一样跳转到页面,但页眉只会打印 index.html。 我试图像这样更改 href:
$(document).ready(function(){
$('a').each(function(){
var value = $(this).attr('href');
var x = 'index.html'+ (#[a-z\d-]+);
$(this).attr('href', value.replace(x,'index.html'));
});
});
它没有成功,因为页眉仍然打印 index.html#section。这里真的需要帮助。谢谢
连接两个正则表达式模式时需要使用正则表达式构造函数。更改以下语句,
var x = 'index.html'+ (#[a-z\d-]+);
$(this).attr('href', value.replace(x,'index.html'));
到,
$(this).attr('href', value.replace(/index\.html#[a-z\d-]+/,'index.html'));