我是JavaScript和jQuery的新手,现在我遇到了一个问题:
我需要将一些数据发布到PHP,并且一位数据需要是div X的背景颜色十六进制.
jQuery具有css("background-color")函数,通过它我可以将背景的RGB值变为JavaScript变量.
CSS函数似乎返回一个像这个rgb(0,70,255)的字符串.
我找不到任何方法来获得背景颜色的十六进制(即使它在CSS中设置为十六进制).
所以我似乎需要转换它.我发现了一个将RGB转换为十六进制的函数,但需要使用三个不同的变量r,g和b来调用它.所以我需要将字符串rgb(x,xx,xxx)解析为var r = x; var g = xx; var b = xxx; 不知何故.
我试图用JavaScript解析字符串,但我并不真正了解正则表达式的事情.
有没有办法将div的背景颜色作为十六进制,或者可以将字符串转换为3个不同的变量?
目前我使用以下 JS (jQuery) 来查找其他几个 div 的背景颜色(作为 rgb):
$theColor = $(this).css("background-color");
Run Code Online (Sandbox Code Playgroud)
它工作得很好,除了 CSS3 渐变。
例如,我使用以下 css 使 div 的背景看起来类似于便利贴:
background: #FFFAAD; /* old browsers */
background: -moz-linear-gradient(top, #FFFAAD 0%, #FFF47D 100%); /* firefox */
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FFFAAD), color-stop(100%,#FFF47D)); /* webkit */
background: gradient(linear, left top, left bottom, color-stop(0%,#FFFAAD), color-stop(100%,#FFF47D));
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFAAD', endColorstr='#FFF47D',GradientType=0 ); /* ie */
Run Code Online (Sandbox Code Playgroud)
jQuery 似乎什么也没有。
如何使用 jQuery 找到至少一种在 css3 渐变中使用的颜色?我对 JS 比较陌生,所以请多多包涵..
谢谢你。