Javascript window.onscroll多次执行函数
我写了以下几行:Javascript window.onscroll多次执行函数,javascript,svg,Javascript,Svg,我写了以下几行: 函数testScroll(){ 如果(window.pageYOffset>400){ 对于(var x=0;x,当前函数在每次滚动时创建3个圆圈 如果希望最多有3个圆,请执行以下更改: var _countCirlces =0; // initial circles count function testScroll(ev){ if(window.pageYOffset>400) { // create 1 circle for each sc
函数testScroll(){
如果(window.pageYOffset>400){
对于(var x=0;x,当前函数在每次滚动时创建3个圆圈
如果希望最多有3个圆,请执行以下更改:
var _countCirlces =0; // initial circles count
function testScroll(ev){
if(window.pageYOffset>400) {
// create 1 circle for each scroll + increment _countCircles
newCircle(circle[x],circleId[x],startColorId[x],endColorId[x]);
_countCircles++;
};return;
};
window.onscroll=testScroll;
var\u circleCount=0;
功能测试滚动(ev){
如果(窗口页面偏移>400&&u循环计数<2){
对于(var x=0;xonscroll
每秒触发几次,您需要一个。或者在重新阅读问题时,在处理程序函数的末尾将window.onscroll
设置为null
…清空window.onscroll工作得很好thx,这是一种糟糕的做法吗?不比将其设置为引用函数=)。它只是删除事件侦听器。如果您不再需要响应事件(在本例中为滚动事件),则删除侦听器(如上面建议的@Teemu)是最佳解决方案。它使用的资源更少,并且通常使代码更易于理解。
var _circleCount = 0;
function testScroll(ev) {
if(window.pageYOffset>400 && _circleCount < 2) {
for (var x=0; x<=2; x++) {
newCircle(circle[x], circleId[x], startColorId[x], endColorId[x]);
_circleCount++;
};
};
return;
};
window.onscroll = testScroll;