国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript編程開發中取色器及封裝$函數用法示例

2019-11-19 15:51:30
字體:
來源:轉載
供稿:網友

本文實例講述了javascript編程開發中取色器及封裝$函數用法。分享給大家供大家參考,具體如下:

1.封裝$函數

function $(str){      //如果傳入的是'#' 則選擇id標簽      //如果傳入的是'.' 則選擇所有的類名標簽      //如果傳入的既不是'#也不是'.' 選擇復合標簽      //判斷傳入的值      if(typeof str !='string'){        console.log('傳入的參數有誤!');        return null;      }       //獲取參數的第一個字母      var firstChar=str.charAt(0);      var name=str.substr(1);      switch(firstChar){        case '#':          console.log('id選擇器');          return document.getElementById(name);          break;        case '.':          //類選擇器:getElementsByClassName是在js中新加入的,對于老的ie6,ie7無法兼容          console.log('類選擇器');          //兼容性          //1.判斷是否能夠使用getElementsByClassName          if(!document.getElementsByClassName){            return document.getElementsByClassName(name);          }else{            //2.獲取所有的標簽            //3.逐個判斷是否帶有該類名            //4.如果有則添加到數組中            var resultElements=[];            var elements=document.getElementsByTagName('*');            // console.log(element);            for(var i=0;i<elements.length;i++){              var element=elements[i];              var class_name=element.className.split(' ');              for(var j=0;j<class_name.length;j++){                if(class_name[j]==name){                    //加入到數組中去                    resultElements.push(elements[i]);                    console.log(resultElements);                }              }            }            return resultElements;          }          break;        default:          console.log('標簽選擇器');          name=str.substr(0);          return document.getElementsByTagName(name);      }    }

2.取色器

<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">  <title>Document</title>  <script src="js/select.js"></script>  <style>    *{      margin: 0;      padding: 0;    }    #box{      width: 300px;      height: 300px;      background:rgb(0,0,0);      margin:20px;    }    #btn{      padding:0 20px;    }    input{      width: 100px;    }  </style>  <script>    //javascript的style屬性只能獲取內聯樣式,對于外部樣式和嵌入式樣式需要用currentStyle屬性。但是,currentStyle在FIrefox和Chrome下不支持,需要使用如下兼容性代碼    HTMLElement.prototype.__defineGetter__("currentStyle", function () {       return this.ownerDocument.defaultView.getComputedStyle(this, null);     });    function bgColor(obj){      return obj.currentStyle.backgroundColor;    }    function compare(color1,color2){      if(color1>color2){        return -1;      }else if(color1<color2){        return 1;      }else{        return 0;      }    }    window.onload=function(){      var red;      var green;      var blue;      var boxColor=[];      $('#btn').onclick=function(){        red=Number($('#red').value);        green=Number($('#green').value);        blue=Number($('#blue').value);        boxColor=bgColor($('#box')).split('(');        boxColor=boxColor[1].split(')');        boxColor=boxColor[0].split(',');        if(red>255||red<0 || green>255||green<0 || blue>255||blue<0){          alert("顏色值出錯了!");          return;        }        //變色定時器        var timer=setInterval(function(){          boxColor[0]=Number(boxColor[0])+compare(boxColor[0],red);          boxColor[1]=Number(boxColor[1])+compare(boxColor[1],green);          boxColor[2]=Number(boxColor[2])+compare(boxColor[2],blue);          $('#box').style.background='rgb('+boxColor[0]+','+boxColor[1]+','+boxColor[2]+')';          if(boxColor[0]==red&&boxColor[1]==green&&boxColor[2]==blue){            clearInterval(timer);          }        },10);      }    }  </script></head><body>  <div id="box"></div>  red:<input type="text" id="red">  green:<input type="text" id="green">  blue:<input type="text" id="blue">  <button id="btn">取色</button></body></html>

點擊此處查看在線演示效果

PS:這里再為大家推薦幾款本站的相關在線工具:

在線RGB、HEX顏色代碼生成器:
http://tools.VeVB.COm/color/rgb_color_generator

RGB顏色查詢對照表_顏色代碼表_顏色的英文名稱大全:
http://tools.VeVB.COm/color/jPicker

在線網頁調色板工具:
http://tools.VeVB.COm/color/color_picker

在線顏色選擇器工具/RGB顏色查詢對照表:
http://tools.VeVB.COm/color/colorpicker

更多關于JavaScript相關內容可查看本站專題:《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結

希望本文所述對大家JavaScript程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鄂州市| 小金县| 齐河县| 化德县| 阳西县| 台北县| 昌黎县| 富宁县| 彩票| 鄱阳县| 华容县| 琼中| 黑水县| 西乌珠穆沁旗| 闸北区| 临颍县| 晋城| 普宁市| 亚东县| 南昌县| 鹰潭市| 和政县| 云浮市| 江阴市| 台东市| 商丘市| 邻水| 通许县| 大名县| 方正县| 桂阳县| 乐至县| 富民县| 博爱县| 涞源县| 成武县| 常州市| 大姚县| 张家港市| 汉阴县| 饶阳县|