如果单击 div,html5 颜色输入值应设置为单击的 div 颜色和背景颜色值。
我试过代码
$(function() {
$("#changeMe").on('click', function() {
$('#designer-javascript-color').val($(this).css("color"));
$('#designer-javascript-backcolor').val($(this).css("background-color"));
});
});
Selected item color:
<input type="color" id="designer-javascript-color" />
<br>Selected item background color:
<input type="color" id="designer-javascript-backcolor" />
<br/>
<div id="changeMe" style='color:white;background-color: blue'>
click here</div>
点击 click me 后,两个输入仍然是黑色。 如何解决此问题,以便在输入中显示白色和蓝色?
最佳答案
在使用之前将 rgb 值转换为十六进制:
function rgbToHex(rgb) {
var a = rgb.split("(")[1].split(")")[0].split(",");
return "#" + a.map(function(x) {
x = parseInt(x).toString(16);
return (x.length == 1) ? "0"+x : x;
}).join("");
}
$(function () {
$("#changeMe").on('click', function() {
$('#designer-javascript-color').val(rgbToHex($(this).css("color")));
$('#designer-javascript-backcolor').val(rgbToHex($(this).css("background-color")));
});
});
<script src="http://code.jquery.com/jquery-1.11.3.js"></script>
Selected item color: <input type="color" id="designer-javascript-color" />
<br>
Selected item background color:<input type="color" id="designer-javascript-backcolor" />
<br/>
<div id="changeMe" style='color:white;background-color: blue'>
click here</div>
关于javascript - 如何在单击时将 html 颜色输入值设置为 div 颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34981213/