jQuery获取文本阴影变量

Mir*_*cea 6 jquery css3

当我点击具有CSS3文本阴影适当性的跨度时,我想得到4个变量.所以对于css的适当性text-shadow: -4px 11px 8px rgb(30, 43, 2);,我的代码应该是:

$("#element").click(function () {
var text-shadow = $("#element").css("text-shadow")
});
Run Code Online (Sandbox Code Playgroud)

是否有可能将它拆分为:

var y = "-4px";
var x = "11px";
var blur = "8px";
color = "rgb(30, 43, 2)";
Run Code Online (Sandbox Code Playgroud)

我需要以某种方式拆分第一个变量来获取这些数据.

感谢名单

guz*_*art 11

您应该使用正则表达式将jQuery css的结果拆分为您要查找的变量.

var result = $('#element').css('text-shadow').match(/(-?\d+px)|(rgb\(.+\))/g)
// result => ['rgb(30, 43, 2)', '-4px', '11px', '8px']
var color = result[0],
    y = result[1],
    x = result[2],
    blur = result[3];
Run Code Online (Sandbox Code Playgroud)

这将返回一个数组,将text-shadow字符串值拆分为具有像素和rgb值的数字.它可以帮助你在这种特殊情况下,但你可能需要更多地工作,以使其适用于所有可能的情况text-shadow

注意:rgb(...)值是数组中的第一个匹配项,因为这是Firefox,Chrome,Safari和Opera返回它的方式,与您分配它的方式无关.IE可能会采用不同的方式.