通过jQuery为将来创建的元素添加CSS规则

我有一个不寻常的问题。我做过很多次这样的事情:

$(“#选择器”).css('color','#00f');

我的问题是我创建了一个<div id=“选择器”&gt,我调用上面的命令,它工作正常

现在,在另一个事件中,稍后,我从DOM中删除该元素,并在稍后使用相同的id再次添加它。该元素现在没有颜色:#00f

是否有一种方法可以在CSS中添加规则,这样它将影响将来使用相同的id/类创建的项目?我喜欢jQuery,但是任何带有纯JavaScript的东西都可以

它必须是动态的,而且我不知道要放入CSS文件中的类。此外,我还计划在应用过程中多次更改单个属性。例如,将颜色设置为黑色、蓝色、红色、黑色


我接受了来自@lucassp的答案,结果是:

函数切换图标(元素,类名)
{
if($(elem.attr('src')=='img/checkbox\u checked.gif'))
{
$(elem.attr('src','img/checkbox\u unchecked.gif'))
//$('..+classname).hide();//这是我删除的旧行
$('html>head')。追加($('style>'+classname+'{display:none;}</style>');
}
其他的
{
$(elem.attr('src','img/checkbox\u checked.gif'))
//$('..+classname).show();//这是我删除的旧行
$('html>head')。追加($('style>'+classname+'{display:block;}</style>');
}
}

我还想说,@Nelson可能是最“正确”的,尽管它需要更多的工作才能进入始终运行良好的应用程序代码,而这不是我目前想要花费的精力

如果将来我必须重写这个(或编写类似的东西),我会研究detach()

这应该起作用:

var style=$('<style>.class{background color:blue;}</style>');
$('html>head')。追加(样式);

发表评论