javascript - 更改 CSS :before if and ID has a specific class

标签 javascript jquery html css

所以我试图让 Jquery 将特定的 css 更改为 :before 如果 div 具有特定的类

<ul>
 <li id="first" class="active">first</li>
 <li id="second">second</Li>
</ul>

如果第一个 li 处于事件状态,我希望 Ul 的 :before 具有特定的左右属性,但如果第二个 li 处于事件状态,它将具有不同的左右 我用 Jquery 添加类,我尝试做这样的事情

if ( $( "#first" ).is( "active" )) {
  $('ul[data-style-id='slider1']:before').append('<style>.left:175px;right:1188px;}</style>');
}

编辑: 我有一个 jquery 代码,它赋予它左右属性,但它只对第一个起作用,所以我尝试做一个不同的脚本来改变第一个,因为那个起作用了我试图给它答案中的属性但是具有每个 LI 的特定属性,但它再次起作用......它只读取第一个

https://jsfiddle.net/czf9kjfd/7/

在这里它工作得很好但是在我的浏览器中它不起作用所以我的问题是如果选择第一个链接我如何定义特定的左右参数

最佳答案

我认为你根本不需要 jQuery,它可以通过简单的 CSS 完成:

HTML

<ul>
<li id="first" class="line-item active">first</li>
<li id="second" class="line-item">second</Li>
</ul>

CSS

.line-item { /* Styles */ }
.line-item::before { /* Styles */ }
.line-item.active { /* Styles */ }
.line-item.active::before {
  left: 175px !important;
  right: 1188px !important;
}

.line-item 类只是一个常量引用。

希望对您有所帮助!

关于javascript - 更改 CSS :before if and ID has a specific class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45670012/

相关文章:

javascript - 为什么这个 Javascript 无法找到正确的索引?

javascript - 如何在没有canvas的情况下在html中手动绘制矩形?

由 <a> 引起的 javascript:history.back(-1) 问题

html - 具有固定定位和 float 的 div

javascript - 停止提交时自动刷新表单

javascript - 从之前的代码更新 DOM 后运行 javascript 代码

javascript - 如何创建一个方法来映射 JSON 对象以设置 vue.js 中数据对象的属性?

javascript - websocket 适用于 http 模块但不适用于 express (node.js)

javascript - img src 变量在 jQuery 中不起作用

python - BeautifulSoup 在使用 find 时挂起