如何使用javascript更改图像不透明度?我将使用javascript创建一个淡化效果,有任何样本吗?有什么像image.opacity可以通过JS代码更改?它是如何设置的?
感谢
答案 0 :(得分:50)
假设您正在使用普通JS(请参阅jQuery的其他答案),要更改元素的不透明度,请写:
var element = document.getElementById('id');
element.style.opacity = "0.9";
element.style.filter = 'alpha(opacity=90)'; // IE fallback
答案 1 :(得分:7)
您可以使用CSS设置不透明度,然后使用javascript将样式应用于DOM中的某个元素。
.opClass {
opacity:0.4;
filter:alpha(opacity=40); /* For IE8 and earlier */
}
使用(例如)jQuery来改变样式:
$('#element_id').addClass('opClass');
或使用普通的javascript,像这样:
document.getElementById("element_id").className = "opClass";
答案 2 :(得分:5)
事实上,你需要使用CSS
document.getElementById("myDivId").setAttribute("style","opacity:0.5; -moz-opacity:0.5; filter:alpha(opacity=50)");
适用于FireFox,Chrome和IE。
答案 3 :(得分:2)
答案 4 :(得分:2)
我不确定你是否可以在每个浏览器中执行此操作,但是你可以设置指定img的css属性。
尝试使用jQuery,它允许你更快更有效地进行css更改。在jQuery中你可以选择使用.animate(),.fadeTo(),.fadeIn(),.hide("slow"),.show("slow")
。
我的意思是这个CSS片段应该为你工作:
img
{
opacity:0.4;
filter:alpha(opacity=40); /* For IE8 and earlier */
}
另请查看此网站,其中包含进一步说明的内容:
http://www.w3schools.com/css/css_image_transparency.asp
答案 5 :(得分:2)
你可以使用Jquery或简单的旧javascript:
var opacityPercent=30;
document.getElementById("id").style.cssText="opacity:0."+opacityPercent+"; filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity="+opacityPercent+");";
你把它放在你调用setTimeout的函数中,直到达到所需的不透明度
答案 6 :(得分:0)
首先在HTML中明确设置不透明度:
<div id="box" style="height:150px; width:150px; background-color:orange; margin:25px; opacity:1"></div>
否则为0或null
然后在我的.js文件中
document.getElementById("fadeButton90").addEventListener("click", function(){
document.getElementById("box").style.opacity = document.getElementById("box").style.opacity*0.90; });