伪元素适用于javascript

pseudo elements work for javascript

本文关键字:javascript 适用于 元素      更新时间:2024-06-19

大家好,我正在开发一个名为colpick的颜色选择器,我使用.css()来改变不同元素的颜色,我在js中重复使用相同的.css(

var colorElement = "a, upper"
$(colorElement).css('color', '#' + hex);

但是当我们悬停时,我也想编辑元素的颜色/风格,然后当我尝试添加带有:悬停或:链接或:焦点或活动等的元素时,就像这个一样

var colorElement = "a:hover, upper:focus, headline:active, bar, footer"
$(colorElement).css('color', '#' + hex);

然后它停止工作(那些伪包含元素不工作)你知道我该怎么用吗?

问候,

jQuery不创建CSS规则,只更改当前DOM。因此,要在悬停、聚焦等之后更改CSS样式,必须添加可以更改它的方法

请参阅如何定义ss-hover-state-in-a-jquery-selector

$(".myclass, .myclass2").hover(function(e) { 
    $(this).css("color",e.type === "mouseenter"?"red":"transparent") 
})

更新:看看CSSX,它可以动态更改CSS样式:

var sheet = cssx();
var rule = sheet.add('a:hover, upper:focus, headline:active, bar, footer');
var setColor = function (hex) {
   return { 'color': '#' + hex };
};
//...
rule.update(setColor('ff0000'));