新答案
(1) 您可以像这样向链接添加数据目标:
<a href="products.php#my-catalogue" data-target="#my-catalogue">my catalogue</a>
(2) Bootstrap 在导航链接中使用您的 href 或 data-target 来查找页面上的目标区域。如果您products.php#my-catalogue
在代码中有诸如正则表达式检查器之类的东西,则会失败。但是,如果您事先进行修剪,它将起作用
在滚动间谍引导代码中,您可以更改(在 ScrollSpy 的“刷新”功能中):
.map(function () {
var $el = $(this)
, href = $el.data('target') || $el.attr('href')
, $href = /^#\w/.test(href) && $(href)
至
.map(function () {
var $el = $(this)
, href = $el.data('target') || $el.attr('href')
, trimmed = href.match(/#\w*/)[0]
, $href = /^#\w/.test(trimmed) && $(trimmed)
然后有类似的东西
<a href="products.php#my-catalogue">my catalogue</a>
应该没有问题
旧答案
也许您可以尝试在引导 js 代码中编辑滚动间谍选择器?
有一条线(对我来说大约是 1442):
selector = this.selector
+ '[data-target="' + target + '"],'
+ this.selector + '[href="' + target + '"]'
如果改为
selector = this.selector
+ '[data-target="' + target + '"],'
+ this.selector + '[href="products.php' + target + '"]'
可以解决你的问题