gpt4 book ai didi

javascript - 使用 JQuery 从 Bootstrap Scrollspy 触发事件

转载 作者:行者123 更新时间:2023-12-01 04:37:22 24 4
gpt4 key购买 nike

我正在 try catch Scrollspy 的事件以运行函数。 Scrollspy 正在努力更改导航栏上的激活链接。但我无法捕获该事件以在其他地方使用它。

这是代码片段:

<body data-spy="scroll" data-target="#navbar" data-offset="30">

<script>
$(document).ready(function(){
$('body').scrollspy({target: "#navbar", offset: 30});
});


$(document).ready(function(){
$('#navbar').on('activate.bs.scrollspy', function() {
console.log('sparkle, sparkle');
});
});
</script>

我知道在某些版本的 Bootstrap 中捕获事件是不可能/工作的?

请指教。

最佳答案

实际上,这是 Bootstrap 4 中极少数没有详细记录或有缺陷的事情之一。正如您已经在 Events 中读到的那样Scrollspy 文档的 activate.bs.scrollspy 部分应该在滚动元素上触发事件 - 带有 data-spy="scroll" 的元素–,并进行相应处理:

$('[data-spy="scroll"]').on('activate.bs.scrollspy', function(event) {
console.log('activate.bs.scrollspy', event);
})

但是,没有记录表明当 Scrollspy 用于 <body> 时元素,activate.bs.scrollspy事件仅在 window 上提供对象。
因此,您可以像这样捕获此 Scrollspy 事件:

$(window).on('activate.bs.scrollspy', function (event) {
console.log('activate.bs.scrollspy', event);
})

关于javascript - 使用 JQuery 从 Bootstrap Scrollspy 触发事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48149497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com