基本上我想從CSS元素(在我們的例子中爲#button)*獲取顏色,並將其用於另一個CSS元素(在我們的例子中爲#output) *但不透明。我想在rgba的輸出,所以我可以設置不透明度從rgba。我的解決辦法似乎並不想工作...jQuery - 從元素獲取顏色並將其用於具有不透明度的另一個元素
function hex2rgb(hex, opacity) {
var h=hex.replace('#', '');
h = h.match(new RegExp('(.{'+h.length/3+'})', 'g'));
for(var i=0; i<h.length; i++)
h[i] = parseInt(h[i].length==1? h[i]+h[i]:h[i], 16);
if (typeof opacity != 'undefined') h.push(opacity);
return 'rgba('+h.join(',')+')';
}
var getcolor = $("#button").css("color");
var colour = hex2rgb(getcolor,0.3);
$(function() {
$("#output").css("backgroundColor",colour);
});
*參見JSFiddle
首先是有一個在您的演示了'#element'沒有元素。其次,你想用'h [i] = parseInt(h [i] .length == 1?h [i] + h [i]:h [i],16)來做什麼? – 2014-09-27 19:23:03
演示中沒有'id = button'。這應該做什麼? – charlietfl 2014-09-27 19:23:14
好的,抱歉,編輯#button。 – Hann 2014-09-27 19:24:36