asimryu

rgba 컬러코드 확인 JavaScript 코드

Feb 11th, 2018
315
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 2.64 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.  <meta charset="UTF-8">
  5.  <title>Color Change</title>
  6.  <style>
  7.   .row > div {
  8.    float:left;
  9.    width: 25%;
  10.    text-align: center;
  11.   }
  12.   .colorbox {
  13.    clear: both;
  14.    margin-bottom: 20px;
  15.    height: 100px;
  16.    background-image: url(http://placeimg.com/1000/100/any);
  17.    background-size: cover;
  18.   }
  19.   .colorview {
  20.    height: 100px;
  21.   }
  22.  </style>
  23. </head>
  24. <body>
  25.  <div class="colorbox"><div class="colorview"></div></div>
  26.  <div class="row">
  27.   <div>
  28.    <h2>RED</h2>
  29.    <div>0 <input type="range" name="red" id="red" min="0" max="255"> 255</div>
  30.    <div id="red_value"></div>
  31.   </div>  
  32.   <div>
  33.    <h2>GREEN</h2>
  34.    <div>0 <input type="range" name="green" id="green" min="0" max="255"> 255</div>
  35.    <div id="green_value"></div>
  36.   </div>  
  37.   <div>
  38.    <h2>BLUE</h2>
  39.    <div>0 <input type="range" name="blue" id="blue" min="0" max="255"> 255</div>
  40.    <div id="blue_value"></div>
  41.   </div>  
  42.   <div>
  43.    <h2>ALPHA</h2>
  44.    <div>0 <input type="range" name="alpha" id="alpha" min="0" max="1" step="0.1"> 1</div>
  45.    <div id="alpha_value"></div>
  46.   </div>  
  47.  </div>
  48.  <script>
  49.   var colorview = document.querySelector(".colorview");
  50.   var red = document.querySelector("#red");
  51.   var green = document.querySelector("#green");
  52.   var blue = document.querySelector("#blue");
  53.   var alpha = document.querySelector("#alpha");
  54.  
  55.   red.addEventListener("input", function(){ setColors(); });
  56.   green.addEventListener("input", function(){ setColors(); });
  57.   blue.addEventListener("input", function(){ setColors(); });
  58.   alpha.addEventListener("input", function(){ setColors(); });
  59.  
  60.   function setColors() {
  61.    var redValue = red.value;
  62.    var greenValue = green.value;
  63.    var blueValue = blue.value;
  64.    var alphaValue = alpha.value;
  65.    document.querySelector("#red_value").innerHTML = redValue + "(#" + toHex(redValue) + ")";
  66.    document.querySelector("#green_value").innerHTML = greenValue + "(#" + toHex(greenValue) + ")";
  67.    document.querySelector("#blue_value").innerHTML = blueValue + "(#" + toHex(blueValue) + ")";
  68.    document.querySelector("#alpha_value").innerHTML=alphaValue;
  69.    colorview.style.backgroundColor = "rgba(" + redValue + "," + greenValue + "," + blueValue + "," + alphaValue + ")";
  70.   }
  71.  
  72.   window.onload = function(){
  73.    setColors();
  74.   };
  75.  
  76.   //0~255 정수를 HEX 코드로 변환하는 함수
  77.   //함수 출처
  78.   //http://www.javascripter.net/faq/rgbtohex.htm
  79.   function toHex(n) {
  80.    n = parseInt(n,10);
  81.    if (isNaN(n)) return "00";
  82.    n = Math.max(0,Math.min(n,255));
  83.    return "0123456789ABCDEF".charAt((n-n%16)/16) + "0123456789ABCDEF".charAt(n%16);
  84.   }
  85.  
  86.  </script>
  87. </body>
  88. </html>
Advertisement
Add Comment
Please, Sign In to add comment