JavaScript 生成RGB颜色
分类:实例代码
分享一段代码实例,它实现了自定义RGB颜色值效果。
通过拖动滑动条即可实现生成,代码实例如下:
<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.pipipi.net/" /> <title>前端教程网</title> <style type="text/css"> * { margin: 0; padding: 0; } main{ border-radius: 10px; background-color: gray; overflow: hidden; width: 240px; padding: 5px; margin: 0 auto; border: 2px solid #000; } .colbox{ margin-top: 5px; width: 238px; height: 238px; border-radius: 5px; border: 1px solid gold; } .setbox{ width: 235px; padding-top: 20px; padding-left: 5px; text-align: center; } .txt { float: left; padding-left: 20px; height: 20px; } input[type=range]{ width: 180px; display: inline-block; margin-top: 10px; margin-right: 10px; outline-style: none; } input[type=text]{ width: 105px; height: 21px; text-align: center; } input.paste { padding-left: 10px; margin-top: 10px; width: 159px; text-align: left; } span { width: 40px; vertical-align: 6px; display: inline-block; text-align: left; } span.prompt { width: 100%; margin-top: 14px; font-size: 12px; text-align: center; } </style> <script> window.onload = function() { var coldiv = document.querySelector(".colbox"); var title = document.querySelector("h2"); var inps = document.querySelectorAll("input[type=range]"); var txt = document.querySelector("input[type=text]"); var copy = document.querySelector("input[type=button]"); var spans = document.querySelectorAll("span"); setRgb(); for (var index = 0; index < inps.length; index++) { inps[index].onmousedown = function () { document.onmousemove = function() { setRgb(); }; }; inps[index].onfocus = function () { document.onkeydown = function(e) { if (e.keyCode === 37 || e.keyCode === 38 || e.keyCode === 39 || e.keyCode === 40) { setRgb(); } } } } copy.onclick = function() { txt.select(); document.execCommand("copy"); } function setRgb() { var r = inps[0].value; var g = inps[1].value; var b = inps[2].value; spans[0].innerHTML = "r:" + r; spans[1].innerHTML = "g:" + g; spans[2].innerHTML = "b:" + b; coldiv.style.backgroundColor = "rgb(" + r + "," + g + "," + b + ")"; txt.value = "rgb(" + r + "," + g + "," + b + ")"; title.style.color = "rgb(" + r + "," + g + "," + b + ")"; } document.onmouseup = function() { document.onmousemove = null; } } </script> </head> <body> <main> <h2>自制取色器</h2> <div class="colbox"></div> <div class="setbox"> <input type="range" min="0" max="255" value="0" /><span></span> <input type="range" min="0" max="255" value="0" /><span></span> <input type="range" min="0" max="255" value="0" /><span></span> <input type="text"> <input type="button" value="点击复制" /> <input type="text" class="paste" placeholder="在此粘贴查看复制内容" /> </div> </main> </body> </html>
RGB颜色值,由三个0-255数字组成的一个颜色值,比如rgb(160,100,150)。
所以拖动滑动条生一个0-255的数字,然后组合起来即可。
相关阅读:
(1).document.querySelector()参阅document.querySelector()一章节。
(2).onmousedown事件参阅JavaScript mousedown事件一章节。
(3).onmousemove事件参阅JavaScript mousemove事件一章节。
(4).onfocus事件参阅JavaScript focus事件一章节。
(5).onkeydown事件参阅JavaScript keydown事件一章节。
(6).keyCode参阅JavaScript event.keyCode属性一章节。
JavaScript 生成RGB颜色,这样的场景在实际项目中还是用的比较多的,关于JavaScript 生成RGB颜色就介绍到这了。
JavaScript 生成RGB颜色属于前端实例代码,有关更多实例代码大家可以查看。