对于另一个堆栈问题,我试图编写一个简短的脚本。它应该在滚动时跟踪div .list_item
的位置,并将.offset().top
应用到另一个div。
为了测试函数是否被触发,我在代码中写了一个console.log
,这是从未见过的。 为什么我的功能在滚动时不会触发?
$(document).ready(function() {
// fire function everytime the window is scrolled
$(window).scroll(function(){
// set element to relate to
var list_items = $('div.list_item');
// get each position
list_items.each(function() {
// store offset().top inside var
var list_item_position = $(this).offset().top;
// select previous dropdown_list item
$(this).prev().find('ul.dropdown_list').css({
// apply offset top
top: list_item_position + "px"
});
});
// write to console to track changes
console.log('positions updated');
}); // .scroll
}); // document.ready
建议赞赏!
答案 0 :(得分:0)
正如@Carlos Delgado在评论中指出的那样,$(window).scroll
跟踪,如果正在滚动窗口,同时将第一行设置为$('#wrapper').scroll
曲目,如果#wrapper
正在滚动,效果很好。
感谢您指出这一点以及其他有用的评论!