javascript - 调用 CSS 类而不是使用 JQuery (.css()) 插入属性

标签 javascript jquery css

我正在使用 JQuery 构建固定 header

目前一切工作正常,但我不想为类设置属性,而是想直接从 css 调用它们。我对这个方法不太熟悉。

下面是一个示例;

#header-main {
  background-color: #ffffff;
  min-height: 107px;
  color: #8c8c8c;
}
#header-main .sabit{
position : fixed;
width: 100%;
z-index: 98;
padding-top: 35px;
border-bottom: 3px ridge #7BBD42;
}

我正在做的是; (工作)

var menu = $('#header-main');
if (...)
    menu.css('position','fixed').css('width','100%').css('z-index','98').css('padding-top','35px').css('border-bottom','3px ridge #7BBD42');
else
    menu.removeAttr('style'); //Back to normal

我正在做什么来实现我想要的目标; (不工作)

var menu = $('#header-main');
if(...)
    menu.addClass("sabit");
else
    menu.removeClass("sabit"); //Back to normal

我也尝试了 menu.addClass(".sabit");menu.addClass("#header-main .sabit"); 但它们都不起作用。

使用 JQuery 直接添加 css 类我做错了什么?

最佳答案

它不起作用,因为 CSS 中的 #header-main.sabit 之间有空格,这意味着您的 CSS 正在尝试设置 的样式。 sabit #header-main 的后代,而不是 #header-main 元素本身。

更改:

#header-main .sabit

致:

#header-main.sabit

关于javascript - 调用 CSS 类而不是使用 JQuery (.css()) 插入属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29119833/

相关文章:

javascript - 如何结合使用 jQuery .hover() 和 Overflow

Jquery - 一个简单的函数可以处理 16 个不同的按钮被点击?

html - 如何定位 HTML/CSS 的背景图片?

javascript - 遍历后的JQuery不监听点击

javascript - Angular2 和 SystemJS : Cannot find module while building a moduleLoader

javascript - 带有自定义按钮的 tinymce-4 在 Chrome 和 Firefox 中工作正常但在 Safari 中不起作用 - 为什么?

css - 带对 Angular 线截面 css 的盒子

javascript - jQuery UI Resizable 缩放比例仅为拖动的 50%

javascript - 输入在空输入上返回 true

html - border-radius 在 MacOS/-webkit- 中不工作