jquery设置div半透明背景色与文字不透明
以下代码,不修改dom结构,实现div的背景半透明,文字不透明效果。
例子,div设置opacity属性会导致内部文字也透明。
// 把16进制颜色转换成rgb格式
var colorToRGB = function(color){
var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/g;
var sColor = color.toLowerCase();
if(sColor && reg.test(sColor)){
if(sColor.length === 4){
var sColorNew = "#";
for(var i=1; i<4; i+=1){
sColorNew += sColor.slice(i,i+1).concat(sColor.slice(i,i+1));
}
sColor = sColorNew;
} www.jbxue.com
//处理六位的颜色值
var sColorChange = [];
for(var i=1; i<7; i+=2){
sColorChange.push(parseInt("0x"+sColor.slice(i,i+2)));
}
return sColorChange.join(",");
}else{
return color;
}
}
var setBakckgoundAndOpacity = function(obj,color,opacity){
var rgbaObj = colorToRGB(color);
if(jquery.browser.msie&&parseInt(jQuery.browser.version)<9){
// 针对ie 6,7,8 通过设置内部元素position:relative;可以避免被父节点的opacity影响
jQuery(obj).children().each(function(){
if(jQuery(this).css('position') == 'static'){
jQuery(this).css('position','relative');
}
});
jQuery(obj).css({
'background':color,
'opacity':opacity
});
}else{
// 支持rgba颜色格式的浏览器用rgba设置透明背景色
jQuery(obj).css({
'background':'rgba('+colorToRGB(color)+','+opacity+')'
});
}
}
setBakckgoundAndOpacity($(div),'#000000','0.6');
您可能感兴趣的文章:
如何用VB6创建透明图象
photoshop设计半透明的塑胶玻璃字效果制作教程
jquery设置div半透明背景色与文字不透明
CSS设置半透明背景实例详解
jQuery 打造动态渐变按钮 详细图文教程
php生成透明背景图片实例
精通 CSS 滤镜三
photoshop抠透明玻璃杯步骤教程详解
jquery弹出层Div背景半透明与内容不透明
iframe背景透明设置方法