JS实现的系统调色板完整实例


Posted in Javascript onDecember 21, 2016

本文实例讲述了JS实现的系统调色板。分享给大家供大家参考,具体如下:

运行效果图如下:

JS实现的系统调色板完整实例

整体页面代码:

<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  <title>DW调色板</title>
<script type="text/javascript" language="javascript">
var ColorHex=new Array('00','33','66','99','CC','FF')
var SpColorHex=new Array('FF0000','00FF00','0000FF','FFFF00','00FFFF','FF00FF')
var current=null
function getEvent()
{
  if(document.all)
  {
  return window.event;//如果是ie
  }
  func=getEvent.caller;
  while(func!=null)
  {
    var arg0=func.arguments[0];
    if(arg0)
    {
      if((arg0.constructor==Event || arg0.constructor ==MouseEvent)||(typeof(arg0)=="object" && arg0.preventDefault && arg0.stopPropagation))
      {
      return arg0;
      }
    }
    func=func.caller;
  }
  return null;
}
function intocolor()
{
  var colorTable=''
  for (i=0;i<2;i++)  //循环2部分
  {
    for (j=0;j<6;j++) //循环6行
    {
      colorTable=colorTable+'<tr height=12>'
      for (k=0;k<3;k++)
      {
        for (l=0;l<6;l++)
        {
          colorTable=colorTable+'<td width=11 style="background-color:#'+ColorHex[k+i*3]+ColorHex[l]+ColorHex[j]+'">'
        }
      }
    }
  }
  colorTable='<table width=217 border="0" cellspacing="0" cellpadding="0" style="border:1px #000000 solid;border-bottom:none;border-collapse: collapse" bordercolor="000000">'
      +'<tr height=30><td colspan=21 bgcolor=#cccccc>'
      +'<table cellpadding="0" cellspacing="1" border="0" style="border-collapse: collapse">'
      +'<tr><td width="3"><td>当前色:</td><td><input type="text" name="DisColor" id="DisColor" size="6" disabled style="border:solid 1px #000000;background-color:#FFFFFF"></td>'
      +'<td width="3"><td><input type="text" name="HexColor" id="HexColor" size="7" style="border:inset 1px;font-family:Arial;" value="#FFFFFF"></td></tr></table></td></table>'
      +'<table border="1" cellspacing="0" cellpadding="0" style="border-collapse: collapse" bordercolor="000000" style="cursor:hand;">'
      +colorTable+'</table>';
  colorpanel.innerHTML=colorTable
}
function doOver() {
  var evt=getEvent();
  var element=evt.srcElement || evt.target;
  var DisColor=document.getElementById("DisColor");
  var HexColor=document.getElementById("HexColor");
  if ((element.tagName=="TD") && (current!=element)) {
    if (current!=null){
      current.style.backgroundColor = current._background
    }
    element._background = element.style.backgroundColor
    DisColor.style.backgroundColor = rgbToHex(element.style.backgroundColor)
    HexColor.value = rgbToHex(element.style.backgroundColor)
    element.style.backgroundColor = "white"
    current = element
  }
}
function rgbToHex(aa)
{
  if(aa.indexOf("rgb") != -1)
  {
    aa=aa.replace("rgb(","")
    aa=aa.replace(")","")
    aa=aa.split(",")
    r=parseInt(aa[0]);
    g=parseInt(aa[1]);
    b=parseInt(aa[2]);
    r = r.toString(16);
    if (r.length == 1) { r = '0' + r; }
    g = g.toString(16);
    if (g.length == 1) { g = '0' + g; }
    b = b.toString(16);
    if (b.length == 1) { b = '0' + b; }
    return ("#" + r + g + b).toUpperCase();
  }
  else
  {
    return aa;
  }
}
function doOut() {
  if (current!=null) current.style.backgroundColor = current._background;
}
function doclick(){
  var evt=getEvent();
  var element=evt.srcElement || evt.target;
  if (element.tagName=="TD"){
    var bg=rgbToHex(element._background);
    document.getElementById("orange").value=bg;
    alert("选取颜色: "+bg);
    return bg;
  }
}
</script>
</head>
<body onload="intocolor()">
  <div id="colorpanel">
  </div>
  <table width=217 border="1" cellspacing="0" cellpadding="0" style="border:1px #000000 solid;border-bottom:none;border-collapse: collapse" bordercolor="000000">
  <tr height=30>
    <td colspan=21 bgcolor=#cccccc>
      <table cellpadding="0" cellspacing="1" border="0" style="border-collapse: collapse">
        <tr>
          <td>所选色:</td>
          <td><input id="orange" type="text" value="" size="20" /></td>
        </tr>
      </table>
    </td>
  </tr>
  </table>
</body>
</html>
Javascript 相关文章推荐
JS date对象的减法处理实现代码
Dec 28 Javascript
jQuery插件实现表格隔行换色且感应鼠标高亮行变色
Sep 22 Javascript
深入理解JavaScript系列(34):设计模式之命令模式详解
Mar 03 Javascript
基于javascript实现文字无缝滚动效果
Mar 22 Javascript
jQuery EasyUI编辑DataGrid用combobox实现多级联动
Aug 29 Javascript
浅谈js常用内置方法和对象
Sep 24 Javascript
详谈js原型继承的一些问题
Sep 06 Javascript
详解nuxt sass全局变量(公共scss解决方案)
Jun 27 Javascript
微信小程序使用map组件实现解析经纬度功能示例
Jan 22 Javascript
jQuery实现带3D切割效果的轮播图功能示例【附源码下载】
Apr 04 jQuery
js实现抽奖的两种方法
Mar 19 Javascript
深入浅析vue全局环境变量和模式
Apr 28 Javascript
基于jPlayer三分屏的制作方法
Dec 21 #Javascript
js实现的简练高效拖拽功能示例
Dec 21 #Javascript
利用Bootstrap实现表格复选框checkbox全选
Dec 21 #Javascript
详解JavaScript的闭包、IIFE、apply、函数与对象
Dec 21 #Javascript
JS实现获取来自百度,Google,soso,sogou关键词的方法
Dec 21 #Javascript
JS定时器用法分析【时钟与菜单中的应用】
Dec 21 #Javascript
vue.js实现仿原生ios时间选择组件实例代码
Dec 21 #Javascript
You might like
通过对php一些服务器端特性的配置加强php的安全
2006/10/09 PHP
如何限制访问者的ip(PHPBB的代码)
2006/10/09 PHP
js控制框架刷新
2008/08/01 Javascript
javascript操作cookie_获取与修改代码
2009/05/21 Javascript
原生js做的手风琴效果的导航菜单
2013/11/08 Javascript
JS,Jquery获取select,dropdownlist,checkbox下拉列表框的值(示例代码)
2014/01/11 Javascript
nodejs 整合kindEditor实现图片上传
2015/02/03 NodeJs
ECMAScript6函数剩余参数(Rest Parameters)
2015/06/12 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
微信小程序 图片宽度自适应的实现
2017/04/06 Javascript
详解webpack引入第三方库的方式以及注意事项
2019/01/15 Javascript
JS利用prototype给类添加方法操作详解
2019/06/21 Javascript
JS实现点击发送验证码 xx秒后重新发送功能
2019/07/30 Javascript
微信小程序个人中心的列表控件实现代码
2020/04/26 Javascript
使用python itchat包爬取微信好友头像形成矩形头像集的方法
2019/02/21 Python
对PyQt5基本窗口控件 QMainWindow的使用详解
2019/06/19 Python
Python 用三行代码提取PDF表格数据
2019/10/13 Python
selenium+headless chrome爬虫的实现示例
2021/01/08 Python
Html5如何唤起百度地图App的方法
2019/01/27 HTML / CSS
HTML5通过调用canvas对象的getContext()方法来获取绘图环境
2014/06/23 HTML / CSS
德国婴儿推车和儿童安全座椅商店:BABYSHOP
2016/09/01 全球购物
宏碁西班牙官网:Acer西班牙
2021/01/08 全球购物
远东集团网络工程师面试题
2014/10/20 面试题
外语专业毕业生个人的自荐信
2013/11/19 职场文书
小学教师管理制度
2014/01/18 职场文书
怎样写好创业计划书的内容
2014/02/06 职场文书
药店主任岗位责任制
2014/02/10 职场文书
教师见习期自我鉴定
2014/04/28 职场文书
诚信的演讲稿范文
2014/05/12 职场文书
挂牌仪式策划方案
2014/05/18 职场文书
药品营销策划方案
2014/06/15 职场文书
五五普法心得体会
2014/09/04 职场文书
2014年卫生保健工作总结
2014/12/08 职场文书
2016应届毕业生就业指导课心得体会
2016/01/15 职场文书
如何在向量化NumPy数组上进行移动窗口
2021/05/18 Python
Linux下搭建SFTP服务器的命令详解
2022/06/25 Servers