jquery 获取 父级的同级下面的子标签的css样式

jquery 获取 父级的同级下面的子标签的css样式,第1张

jquery中css() 方法可以设置或返回被选元素的一个或多个样式属性,下面的例子将返回首个匹配元素的 background-color 值:

$("p")css("background-color");

父级的同级元素的子标签的css样式如下:

//eq(0)表示选择匹配到多个元素中的第一个

$("target")parent()siblings()eq(0)children()eq(0)

使用jQuery获取样式中的background-color的值时发现在获取到的颜色值在IE10以下版本中是以HEX格式显示#ffff00,而IE10,、Chrome、Firefox中则是以GRB格式显示rgb(255,0,0),由于需要对颜色值进行判断处理,所以需要得到统一的颜色格式,最好是HEX格式的,方便处理点。搜索了一下,从国外的一个网站上得到一段代码:

复制代码

代码如下:

$fngetHexBackgroundColor

=

function()

{

var

rgb

=

$(this)css('background-color');

rgb

=

rgbmatch(/^rgb\((\d+),\s(\d+),\s(\d+)\)$/);

function

hex(x)

{return

("0"

+

parseInt(x)toString(16))slice(-2);}

return

rgb=

"#"

+

hex(rgb[1])

+

hex(rgb[2])

+

hex(rgb[3]);

}

上面定义的是一个jQuery函数,我们可以通过

$("#bg")getHexBackgroundColor();

获取到标签id="bg"的background-color的RGB值。

下面做一下小小的修改,就是加一个判断,如果是显示HEX值(IE10以下)就直接拿值,如果是非IE浏览器则将值转换成RGB格式:

复制代码

代码如下:

$fngetBackgroundColor

=

function()

{

var

rgb

=

$(this)css('background-color');

if(rgb

>=

0)

return

rgb;//如果是一个hex值则直接返回

else{

rgb

=

rgbmatch(/^rgb\((\d+),\s(\d+),\s(\d+)\)$/);

function

hex(x)

{return

("0"

+

parseInt(x)toString(16))slice(-2);}

rgb=

"#"

+

hex(rgb[1])

+

hex(rgb[2])

+

hex(rgb[3]);

}

return

rgb;

}

以上就是关于jquery 获取 父级的同级下面的子标签的css样式全部的内容,包括:jquery 获取 父级的同级下面的子标签的css样式、jQuery获取CSS样式中的颜色值的问题,不同浏览器格式不同的解决办法、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9471251.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存