Как можно получить цвет div блока (background css) и вывести например через alert()?
Например: чтобы выводилось ff7659 после клика на кнопку.
Код на : jsfiddle.net
Html:
Js:
$("#but_color").click(function () {
//alert();
});
Css:
#color_bk{ height:150px; width:150px; background: #ff7659; }
#but_color{ height:20px; width:150px; background: #5ca7df; padding: 5px 0; text-align: center; color: #000; font-size:16px; font-weight:bold; cursor: pointer; }
Ответ
$("#but_color").on('click', function () {
var bg = $("#color_bk").css("backgroundColor");
alert(parseColor(bg).hex);
});
function parseColor(color) {
var arr=[]; color.replace(/[\d+\.]+/g, function(v) { arr.push(parseFloat(v)); });
return {
hex: "#" + arr.slice(0, 3).map(toHex).join(""),
opacity: arr.length == 4 ? arr[3] : 1
};
}
function toHex(int) {
var hex = int.toString(16);
return hex.length == 1 ? "0" + hex : hex;
}
parseColor("rgb(210, 10, 10)"); // {"hex":"#d20a0a","opacity":1}
parseColor("rgba(210, 10, 10, 0.5)"); // {"hex":"#d20a0a","opacity":"0.5"}
parseColor("rgb(210)"); // {"hex":"#d2","opacity":1}
Комментариев нет:
Отправить комментарий