以下是我的代码.我想改变#preview div的背景颜色,但总是无法选择#preview.似乎脚本执行时它不存在.其他jQuery脚本稍后会创建它.
jQuery("#panel").mouseleave(function(){ var good_color = jQuery('.colorpicker_hex input').val(); jQuery("#preview").css({ 'background-color': good_color }); });
如何选择所有当前和未来的#preview div并更改其背景颜色?我认为有一些像live()但我还没有找到CSS更改的例子.
解决方法
jQuery并没有特别要做你已经列出的事情.但是,您可以添加样式元素来执行此操作:
$("<style>#preview { background-color: #eee; }</style>") .appendTo(document.documentElement);
像所有样式规则一样,当任何元素匹配时,它将适用.当你在文档元素的末尾添加它时,它应该赢得任何样式冲突(除非特异性差异,但id选择器非常具体).
Live example – 在Chrome,Firefox,Opera,IE6和IE9中经过测试和使用