锚点添加错误咨询:需指向当前页面而非主域名页面
锚点跳转路径错误修正
问题核心:当前代码生成的锚点链接直接使用#锚点名称,浏览器会默认跳转到主域名根路径下的锚点(如site.com/#anchor),而非当前页面路径下的锚点(如site.com/category/article#anchor)。
修正后的代码
generateNavEl: function(anchor, text) { var $a = $('<a class="nav-link"></a>'); // 获取当前页面完整路径(剔除原有锚点),拼接目标锚点 var currentPageUrl = window.location.href.split('#')[0]; $a.attr("href", currentPageUrl + "#" + anchor); $a.text(text); var $li = $("<li></li>"); $li.append($a); return $li; },
修正说明
通过window.location.href.split('#')[0]获取当前页面的完整URL(不包含已有的锚点部分),再拼接目标锚点,确保生成的链接指向当前页面的对应锚点位置,而非根域名页面。
内容的提问来源于stack exchange,提问作者Красовский
相关产品推荐
相关产品推荐

