rgb2hex.js
/*http://stackoverflow.com/questions/24341507/get-background-colour-from-linear-gradient-color-value*/
by guest271314
HTML
<div></div>
CSS
div {
background : linear-gradient(to right, #fff 87%, rgba(238, 237, 233, 0) 100%);
background:linear-gradient(to right, #fff 87%, rgba(238, 237, 233, 0) 100%);
}
JavaScript
$(function () {
(function ($) {
$.fn.rgb2hex = function (prop) {
return $.map(
$(this)
.css(prop)
.split(/([rgb|rgba|+[\(]+[\d]+[\,]+[ \d]+[\, \d]+[ \d]+[\)])/)
, function (value, index) {
if (value.indexOf("rgb") != -1) {
var _rgba = function () {
return $.map(value
.replace(/[rgba]|[rgb]|[\(|\)]/g, "")
.split(",").map(function(r) {
return parseInt(r, 10)
}), function (k, v) {
var h = k.toString(16);
var hex = h.length === 1 ? "0" + h : h;
var _hex = [];
_hex.push(hex);
return _hex;
});
};
return $.map([$.makeArray([], _rgba())]
, function (v, i) {
return (v.length === 4
? "#" + v.slice(0, 3).join("")
: "#" + v.join("")
);
});
};
});
};
})(jQuery);
console.log($("div").css("background")
, $("div").rgb2hex("background")
);
$("div").html("css background: "
+ "<br /><br />" + $("div", this).css("background")
+ "<br /><br />" + "rgba to hex: "
+ "<br /><br />" + $("div", this).rgb2hex("background")
...