javascript 顏色選取器

來源:互聯網
上載者:User

 代表顏色:
<input name="txtColorValue" type="text" id="txtColorValue" class="inputText" onclick="colordialog()" onblur="LoadColor()" style="width:120px;" />
<input type="text" class="inputText" id="txtExample" style="width: 120px; border: 0px; background-color: #e0dfe3" />
        

 <script type="text/javascript">
        function LoadColor() {
            var txtColorValue = $("#txtColorValue");
            if (jQuery.trim(txtColorValue.val()).length == 0) return;
            var pattern = /^#[0-9a-fA-F]{6}$/;
            if (txtColorValue.val().match(pattern) == null) {
                newAlert_Top('非法的顏色值!');
                txtColorValue.focus();
                txtColorValue.val("");
            }
            $("#txtExample").css("backgroundColor", txtColorValue.val());
        }
    </script>

 <script language="javascript">
<!--

        //只有把〈script〉〈/script〉標籤放在〈body〉標籤內才可以正常使用“其它顏色...”功能

        document.write("<OBJECT id='dlgHelper' CLASSID='clsid:3050f819-98b5-11cf-bb82-00aa00bdce0b' width='0px' height='0px'></OBJECT>");
        var ocolorPopup = window.createPopup();
        var ecolorPopup = null;
        //滑鼠移開時移除邊框
        function colordialogmouseout(obj) {
            obj.style.borderColor = "";
            obj.bgColor = "";
        }
        //滑鼠滑過時給顏色添加邊框
        function colordialogmouseover(obj) {
            obj.style.borderColor = "#0A66EE";
            obj.bgColor = "#EEEEEE";
        }
        //點擊顏色時觸發
        function colordialogmousedown(color) {
            ecolorPopup.value = color;
            ocolorPopup.document.body.blur();
            $("#txtExample").css("backgroundColor", color);
            ocolorPopup.hide();
        }
        //其它顏色
        function colordialogmore() {
            var sColor = dlgHelper.ChooseColorDlg(ecolorPopup.value);
            sColor = sColor.toString(16);
            if (sColor.length < 6) {
                var sTempString = "000000".substring(0, 6 - sColor.length);
                sColor = sTempString.concat(sColor);
            }
            ecolorPopup.value = "#" + sColor.toUpperCase();
            //document.body.bgColor="#"+sColor.toUpperCase();
            ocolorPopup.document.body.blur();
            $("#txtExample").css("backgroundColor", "#" + sColor.toUpperCase());
        }

        function colordialog() {
            var e = event.srcElement;
            e.onkeyup = colordialog;
            ecolorPopup = e;
            var ocbody;
            var oPopBody = ocolorPopup.document.body;
            var colorlist = new Array(40);
            oPopBody.style.backgroundColor = "#f9f8f7";
            oPopBody.style.border = "solid #999999 1px";
            oPopBody.style.fontSize = "12px";

            colorlist[0] = "#000000"; colorlist[1] = "#993300"; colorlist[2] = "#333300"; colorlist[3] = "#003300";
            colorlist[4] = "#003366"; colorlist[5] = "#000080"; colorlist[6] = "#333399"; colorlist[7] = "#333333";

            colorlist[8] = "#800000"; colorlist[9] = "#FF6600"; colorlist[10] = "#808000"; colorlist[11] = "#008000";
            colorlist[12] = "#008080"; colorlist[13] = "#0000FF"; colorlist[14] = "#666699"; colorlist[15] = "#808080";

            colorlist[16] = "#FF0000"; colorlist[17] = "#FF9900"; colorlist[18] = "#99CC00"; colorlist[19] = "#339966";
            colorlist[20] = "#33CCCC"; colorlist[21] = "#3366FF"; colorlist[22] = "#800080"; colorlist[23] = "#999999";

            colorlist[24] = "#FF00FF"; colorlist[25] = "#FFCC00"; colorlist[26] = "#FFFF00"; colorlist[27] = "#00FF00";
            colorlist[28] = "#00FFFF"; colorlist[29] = "#00CCFF"; colorlist[30] = "#993366"; colorlist[31] = "#CCCCCC";

            colorlist[32] = "#FF99CC"; colorlist[33] = "#FFCC99"; colorlist[34] = "#FFFF99"; colorlist[35] = "#CCFFCC";
            colorlist[36] = "#CCFFFF"; colorlist[37] = "#99CCFF"; colorlist[38] = "#CC99FF"; colorlist[39] = "#FFFFFF";

            ocbody = "";
            ocbody += "<table CELLPADDING=0 CELLSPACING=3>";
            ocbody += "<tr height='20' width='20'><td align='center'><table style='border:1px solid #808080;' width='12' height='12' bgcolor='+e.value+'><tr><td></td></tr></table></td><td bgcolor='eeeeee' colspan='7' style='font-size:12px;' align='center'>使用中色彩</td></tr>";
            for (var i = 0; i < colorlist.length; i++) {
                if (i % 8 == 0)
                    ocbody += "<tr>";
                ocbody += "<td width='14' height='16' style='border:1px solid;' onMouseOut='parent.colordialogmouseout(this);' onMouseOver='parent.colordialogmouseover(this);' onMouseDown=parent.colordialogmousedown('" + colorlist[i] + "') align='center' valign='middle'><table style='border:1px solid #808080;' width='12' height='12' bgcolor='" + colorlist[i] + "' ><tr><td></td></tr></table></td>";
                if (i % 8 == 7)
                    ocbody += "</tr>";
            }
            ocbody += "<tr><td align='center' height='22' colspan='8' onMouseOut='parent.colordialogmouseout(this);' onMouseOver='parent.colordialogmouseover(this);' style='border:1px solid;font-size:12px;cursor:default;' onMouseDown='parent.colordialogmore()'>其它顏色...</td></tr>";
            ocbody += "</table>";

            oPopBody.innerHTML = ocbody;
            ocolorPopup.show(e.offsetLeft + 0, e.offsetTop + e.offsetHeight + 0, 158, 147, document.body);
        }
//-->
    </script>

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.