我正在尝试在第一次单击时更改列表项的文本和 href。在第二次单击时,它应该转到新的 url。这些是我尝试过的几种方法:
HTML
<ul class="nav">
<li><a href="#">Click me</a></li>
</ul>
jQuery
这种方式会更改文本,然后立即转到新的 url。
$('ul.nav li:nth-child(1) a[href="#"]').click(function() {
$(this).text('New Text');
$(this).attr('href', 'http://www.website.com');
});
第二种方法切换 text 和 href 但 preventDefault() 仍然阻止我转到新 URL,尽管在选择器中指定了 a[href="#"]。
$('ul.nav li:nth-child(1) a[href="#"]').click(function(e) {
$(this).text('New Text');
e.preventDefault();
$(this).attr('href', 'http://www.website.com');
});