Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从Java脚本更改CSS内容_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 从Java脚本更改CSS内容

Javascript 从Java脚本更改CSS内容,javascript,jquery,html,css,Javascript,Jquery,Html,Css,如果我向下滚动到网站的某个位置,如何更改css文件中的背景色 $(文档).ready(函数(){ var scroll_pos=0; $(文档)。滚动(函数(){ scroll_pos=$(this).scrollTop(); 如果(滚动位置>260){ $('span[class=“icon bar”]”)css('background-color','#2CA8FF'); }否则{ $('span[class=“icon bar”]”)。css('background-color','wh

如果我向下滚动到网站的某个位置,如何更改css文件中的背景色

$(文档).ready(函数(){
var scroll_pos=0;
$(文档)。滚动(函数(){
scroll_pos=$(this).scrollTop();
如果(滚动位置>260){
$('span[class=“icon bar”]”)css('background-color','#2CA8FF');
}否则{
$('span[class=“icon bar”]”)。css('background-color','white');
}
});
});
.navbar-transparent.navbar-toggle.icon-bar[class*=“navbar ct”].navbar-toggle.icon-bar{
背景色:白色!重要;
}

切换导航
将代码更改为:

$('span.icon-bar').css('background-color', 'white');

您正在使用
!重要信息
css文件中的声明。这增加了特异性,这可能导致:

.icon-bar {
    background-color: white !important; 
}
…为了战胜这一点:

$('span[class="icon-bar"]').css('background-color', '#2CA8FF');

您可以快速尝试删除
!重要信息
,查看这是否解决了问题。

是的,您在这里遇到的问题是针对您试图建立的样式的特定性(因为引导)。我在这里已经做了好几次你想做的事了,通常我会结束写作!重要的是颜色改变后。我使用的常规解决方案是创建两个类别:

.blue {
   background-color: #2CA8FF !important;
}

.white {
   background-color: #FFF !important;
}
然后在jquery中指定类而不是样式:

if(scroll_pos > 260) {
  $('span.icon-bar').addClass('blue');
} else {
  $('span.icon-bar').removeClass('blue');
}
最后,正如你所看到的,我没有和怀特合作过。这是因为我直接将其分配给html中的元素:

<span class="icon-bar" class="white"></span>
<span class="icon-bar" class="white"></span>
<span class="icon-bar" class="white"></span>


默认情况下,所有的类都是白色的,当您达到260时,它们会变成蓝色,因为这是最后一个指定的类。可能需要稍微更改一下代码,但它对我很有效…

我真的建议使用选择器,例如
$('nav.icon bar')
或类似内容,并保存到变量中,以避免jQuery在每个
滚动
事件上搜索整个
文档中的每一个
。当您最初将.navbar透明类设置为静态颜色时,为什么要尝试使用它??navbar transparent将有自己的引导css属性,可能会干扰您的自定义css。感谢您的帮助。我现在不知道,为什么我没有看到这个^^