使用jQuery / JS从字段值修改伪元素?

时间:2013-07-15 15:04:59

标签: javascript jquery css pseudo-element

我知道jQuery不能直接操作CSS伪元素,我已经阅读了一些不回答我问题的帖子。

我需要使用字段的值修改伪元素的CSS。

我的项目在文本使用之前显示了一个图标:before。我需要该图标的字体大小,以便在用户更改字段中的值时动态更改。

我已经掌握了脚本的基础知识,但我无法通过每次更改来改变字体大小。例如(#base_size是具有整数值的字段,a:before是已插入图标的伪元素):

$('#base_size').change(function() {
    var baseSize = $(this).attr('value');
    document.styleSheets[0].insertRule('.item a:before { font-size:' + baseSize + 'px !important; }');
});

这个特殊的jQuery会改变字体大小,但只是第一次。 #base_size中的进一步更改不会影响伪元素,但每次更改都会创建一个新的CSS规则。奇怪的是,Chrome开发工具显示“.item a :: before”(每次更改一个),有两个冒号,没有声明。

我可能会以错误的方式解决这个问题。我将非常感谢任何帮助!

1 个答案:

答案 0 :(得分:-1)

为什么带有样式表的futz?

尝试更改CSS:

$('#base_size').change(function() {
    var baseSize = this.value;
    $('.item a:before').css({ 'font-size': baseSize + 'px' });
});