我试图做一些函数来检查元素的bg并且改变它的bg来赋予alpha通道。函数有以下形式:jQuery函数添加alpha到元素bg
$.fn.bgalpha = function(alpha) {
var bg = $(this).css('background-color');
//...
}
但是:镶边时,正常的颜色设置返回BG为RGB和与RGBA零的时候没有BG,即8总是返回十六进制,IE9回报“透明”时,有没有bg和rgb,当有bg时等。非常不同的情况。
我想要做的是>从对象的bg颜色获取r,g,b,添加到'a'通道并将元素bg设置为包含所有值的rgba。但是从简单的事情来看,当我们谈论跨浏览时,它会变得棘手和复杂。
你有什么想法如何操作这些颜色一些'uniwersal'的方式? 在不同的情况下,我得到的值“无”,“透明”,“RGBA”,“RGB”或“十六进制”为BG
这可能是更简单了很多比它的声音。如果浏览器返回十六进制颜色,它可能不支持rgb,并不是所有浏览器都支持。并非所有浏览器都支持rgba,如果浏览器不支持rgba,则无法设置Alpha通道,因此您需要先测试浏览器是否支持rgba,如果是,请使用rgba设置颜色! – adeneo 2013-02-22 20:41:18
解决方法如何:使用两个元素,层叠在一起,一个具有背景,另一个具有内容。然后改变背景的不透明度。 – Blazemonger 2013-02-22 20:41:24