我为此尝试 searchengine ,但我不确定如何完全称呼它。
我可以成功地改变我的div元素的样式,例如:
$(document).ready($('div.element1').css("float", "left"));
这将成功更改存在的类element1
的所有元素。但是,新的(在执行上面之后)元素仍将使用旧选项float: right;
生成。永久性地更改此div
的样式的最佳/最简单选项是什么?我可以在元素创建后手动注入它,但说实话感觉不对。
答案 0 :(得分:2)
最好不要使用.css()
方法添加内联样式,而只需添加/删除具有样式的类,因此为所有这些元素的样式创建一个类。
如果新创建的元素具有您定义的类,那么它们也将具有该样式。
您可以选择执行此操作:
$(document).on('change or_other_event','your_selectors', function(){
// your code
});
如果新元素包含类element1
,element2
...,则需要这样的内容:
$(document).on('change','div[class*="element"]', function(){
// your code
});
答案 1 :(得分:1)
只需在css上创建一个新类,然后将该类添加到新元素
.newElement{
color:red//example style
}
$("<div>",{class:'newElement'})
答案 2 :(得分:0)
您的代码:
$(document).ready($('div.element1').css("float", "left"));
相当于:
var element = $('div.element1').css("float", "left");
$(document).ready(element);
这意味着任何未绘制的元素都不会受到影响。而是使用:
$(document).ready(function() {
$('div.element1').css("float", "left");
});
上面的代码确保在页面加载后进行更改。