我知道我只能拨打window.onscroll = function(){}
一次,因为多次调用可能会导致他们互相覆盖。这就是为什么我问:可以将函数调用“推”到window.onscroll吗?
//example
function example(num) {
var number = num;
window.onscroll = function() {
number *= number
}
}
example(2);
example(4);
//this way, the number only changes in the second function call
//somehow it's possible to get the same result? ("adding" functions to window.onscroll
function example(num) {
var number = num;
window.onscroll += function() {
number *= number
}
}
example(2);
example(4);
如何向window.onscroll“添加”函数调用?
答案 0 :(得分:4)
使用addEventListener API可以实现这一点。
e.g:
window.addEventListener('scroll', function() {
console.log('one');
});
window.addEventListener('scroll', function() {
console.log('two');
});
例如,在this CodePen中,我将两个滚动侦听器绑定到window
对象。如果您打开浏览器控制台并滚动底部的预览窗格,您应该会在控制台中看到这两条消息重复。