繁体   English   中英

事件监听器只工作一次

[英]Event lisener works only one time

当滚动值 >= 500 时,我有一个更改 CSS 的代码:

 var appearScroll = function(){
            let fline = document.getElementById("skills__listone");
            var skills = document.getElementById("skills");
            var baselocation = 0;
            fline.style.opacity = 0;
            var distance = window.pageYOffset;
            window.addEventListener("click", function(){
                if ( distance >= 600 ){
                    fline.style.opacity = 1;
                }
            })
            
            
    
        };
        appearScroll();

这只工作一次,例如当滚动值为 200 并且我单击鼠标时,没有任何反应(没关系,因为距离 >= 600),但是当滚动值为 700 时,没有任何反应,因为单击function 已经在运行。 function 必须观察距离值并依赖 IT 得出结果

var distance = window.pageYOffset; 此行应位于点击事件 function 内,以获取每次点击时的当前window.pageYOffset值。

像这样:

window.addEventListener("click", function(){
   var distance = window.pageYOffset; // <-- here
   if ( distance >= 600 ){
       fline.style.opacity = 1;
   }
})
        

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM