2013-04-29 68 views
0

如何让此代码生效?如何为css创建实时事件

$("#send_button").css({ opacity: 0.2 });

此代码被施加在元件上从一个div内部上document ready。该div被其他div替换为一个事件,然后再次以html()重新插入。

这是div(举例):

<div id="dinamic_div"><img src="image.jpg" id="send_button"></div>

+0

对不起,这是'send_button',我写的是错误的:)有没有 “活” 与JavaScript的应用CSS,它仅适用 – sorinu26 2013-04-29 17:54:56

+1

当前在页面上的元素。要插入也适用于未来元素的CSS,只需在样式表中设置样式即可。如果这是不可能的,你必须在头部插入一个样式标签,或者在元素创建时对样式进行设计。 – adeneo 2013-04-29 17:55:38

回答

4

创建CSS规则,它将适用于,即使它是动态创建的选择相匹配的对象。

#send_button {opacity: 0.2;} 

或者,请与类名的不透明度CSS规则,并把类的名字在您的按钮:

.lightButton {opacity: 0.2;} 

<div id="dinamic_div"> 
    <img src="image.jpg" class="lightButton" id="send_button"> 
</div> 

如果您在使用JavaScript来做到这一点,那么你最简单的方法是创建动态对象时创建样式。

如果你不能这样做,你可以用javascript创建一个CSS规则。

工作例如:

var html = '<div id="dinamic_div"><img src="http://dummyimage.com/200x100/000/fff&text=Hello" id="send_button"></div>'; 

$(html).appendTo(document.body); 

var style = document.createElement("style"); 
style.type = "text/css"; 
style.innerHTML = "#send_button {opacity: 0.2;}"; 
document.getElementsByTagName("head")[0].appendChild(style); 

工作演示:http://jsfiddle.net/jfriend00/Cnbvg/

+0

我用CSS做了它。谢谢! – sorinu26 2013-04-29 19:12:35