javascript - 你可以帮帮我吗。我怎样才能做出实时变化的价值?
问题描述
我有一个代码:
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("scroll", function(){
for (i = 0 ; i < 800; i++){
i = distance;
console.log(distance);
}
})
如您所见,我将变量的值发送到控制台日志,当我滚动时它应该会改变。但它不起作用,只有当我刷新页面时值才会改变。
解决方案
假设您在appearScroll
某处调用该函数,该函数只读取window.pageYOffset
一次的值。然后在scroll
事件中,您的事件处理函数将该值记录到控制台(出于某种原因最多 800 次?)。
为了读取事件中的新值scroll
,您必须在该事件处理程序中读取该值。例如:
window.addEventListener("scroll", function(){
console.log(window.pageYOffset);
})
(当然,将相同的值记录 800 次似乎也没有必要。尽管我想我并不完全清楚您要对涉及的未使用的各种其他值做什么。)
推荐阅读
- python - Django Oscar 仪表板的自定义图标
- net-snmp - 发送陷阱时出现 pysnmp.smi.error.SmiError
- android - 如何在 WebViewClient 中获取 SharedPreferences 值?
- android - OnCompleteListener - OnDeleteListener -OnUpdateListener
- rxjs - 在不应用订阅的情况下更新 observable 的值
- javascript - 在 React Native 中从图像中手动选择颜色
- python - 如何用python中的列表字符串替换numpy数组的数字
- r - gamlss ZASICHEL 分布错误:外部函数调用中的 NA/NaN/Inf (arg 5)
- spring-boot - 测试中未找到 KafkaProperties bean
- python - 不是按密度而是按第三列的平均值为 2d 直方图着色