javascript - jQuery 检测固定元素的背景颜色

标签 javascript jquery html css

我有一个位置固定的白色菜单按钮。我的网站上有一个部分具有白色背景颜色。我的目标是,当菜单按钮滚动到白色部分时,它会变成黑色而不是白色。

我只是不知道如何检测固定元素的背景颜色?这可能吗?

这是我的 jQuery 的样子:

$color = how to detect bg color?;

if ($color == "#fff"){
    $("nav-icon2").css("color", "#000");
}else{
    $("nav-icon2").css("color", "#fff");
}

最佳答案

这是一个基于此解决方案的工作 fiddle : How to get the background color code of an element?

See this fiddle

var color = '';
var x = $(".nav-icon2").css('backgroundColor');
hexc(x);
alert(color);

function hexc(colorval) {
    var parts = colorval.match(/^rgb\((\d+),\s*(\d+),\s*(\d+)\)$/);
    delete(parts[0]);
    for (var i = 1; i <= 3; ++i) {
        parts[i] = parseInt(parts[i]).toString(16);
        if (parts[i].length == 1) parts[i] = '0' + parts[i];
    }
    color = '#' + parts.join('');
}

编辑:

如果我正确理解你的问题,你想要这个:

See this updated fiddle

$(window).scroll(function(){
    if($(window).scrollTop() > 350){
    $("h2").css('color','#f00');
  }else{
        $("h2").css('color','#fff');
  }
});

关于javascript - jQuery 检测固定元素的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36312680/

相关文章:

html - 同一 HTML 页面中的两个 Flash cc 动画

javascript - 如何放置上标谷歌图表标题?

javascript - 无法在 div 中加载内容

javascript - preventDefault() 和 off ('click' 之间的区别)

javascript - 使用jquery抓取图像SRC attr

长度为零时的 HTML 列表框宽度

html - 将鼠标移动到子菜单时,如何在父导航元素上保持悬停状态?

javascript - 如何通过代理从代码中更新对象的属性来更新输入的值?

javascript onclick代码更改

javascript - Jquery/Javascript 数学 : Why are these two 1 line math problems not giving the same answer?