我正在使用 javascript 来控制我的页面页面在单击锚链接后滚动到的位置,因为我有一个固定的导航。
我有一页锚+脚本在(PAGE B)上正常工作。我的问题是我在不同的页面(PAGE A)上有按钮,需要在正确工作的页面(PAGE B)上定位锚点。锚本身可以正常工作,但 javascript 不会触发。
它没有触发的原因(通过发出警报而不接收弹出窗口进行测试)是因为 PAGE A 上的按钮的 javascript 不知道在 PAGE B 上查找元素。谷歌搜索三个小时后,我无法弄清楚如何告诉它查看一个新页面,而不仅仅是元素的层次结构。我确信这非常简单,但我是 javascript 的初学者,感谢您的帮助。
编码:
PAGE A 按钮 HTML:
<a href="productsandservices.html#financing" class="btn btn-sm btn-default
actively2">Learn more</a>
页面 Javascript:
<script>
$("div ul li a[href^='productsandservices.html#']").on('click', function(e) {
// prevent default anchor click behavior
e.preventDefault();
// animate
$('html, body').animate({
scrollTop: $(this.hash).offset().top - 150
}, 300, function(){
});
});</script>
页 B 锚点 HTML:
<div class="col-md-10 col-md-offset-1 col-sm-12 col-xs-12"><section id="financing">
PAGE B:Javascript:(与 PAGE A 完全相同)
$("div ul li a[href^='productsandservices.html#']").on('click', function(e) {
// prevent default anchor click behavior
e.preventDefault();
// animate
$('html, body').animate({
scrollTop: $(this.hash).offset().top - 150
}, 300, function(){
});
});</script>
请和谢谢。