用于动态创建元素的jQuery CSS()

时间:2010-09-15 11:46:46

标签: jquery css live

我正在使用jQuery CSS函数来设置一些元素的样式

$element.css(style);

这样可行,但部分元素是在页面加载后动态创建的。 这应该是

$element.live ('created',function() {
$(this).css(style);
});

我被困在创建的事件上。有什么想法吗?

3 个答案:

答案 0 :(得分:21)

创建元素没有事件(无论如何都不是普遍可用的)。你可以

  • 将规则添加到样式表,以便它们自动应用于新创建的元素
  • 创建元素时链接 css()方法:

    $('<img id="createdImage" src="some.jpg"/>')
        .appendTo(document.body)
        .css(style);
    
  • 动态创建新样式表:

    $("<style>").text("#myNewEl { width:20px; height:30px; }").appendTo("head");
    

答案 1 :(得分:1)

  

最好的想法是定义CSS类。然后删除并添加   根据需要来自Dynamic元素的类

$(element).addClass("className");
$(element).removeClass("className");

示例: JS Fiddle

答案 2 :(得分:0)

$('head').append('
< style >
.folder { background: url(../icons/Folder_icons/g/f.png) no-repeat left top;} < / style >');