首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >滚动时改变条形图的颜色

问滚动时改变条形图的颜色
EN

Stack Overflow用户
提问于 2017-06-24 11:04:29
回答 1查看 39关注 0票数 1

在滚动时,我需要添加条形图的颜色:当加载页面时,条形图应该是绿色的,在使用滚动时,使用红色的填充颜色。

这可以简单地在原生javascript上完成吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-24 12:33:33

尝尝这个

代码语言:javascript
复制
var scrollTimeout;
window.onscroll = function() {
  clearTimeout(scrollTimeout);
    svg.selectAll(".bar").style('fill', 'red');
    scrollTimeout = setTimeout(function() {
       svg.selectAll(".bar").style('fill', 'steelblue');
    }, 500);
}

好的。因此,要动态更改颜色,可以使用HSL颜色并更改第一个值。我使用从红色到绿色的0-125句号.

代码语言:javascript
复制
var scrollHeight = document.body.scrollHeight - window.innerHeight;
window.onscroll = function() {
    var color = 125 - 125 / scrollHeight * window.pageYOffset;
    svg.selectAll(".bar").style('fill', function(){return 'hsl('+color+', 100%, 50%)'});
}

另外,如果你需要调色,只需播放最后两个参数即可。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44735705

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档