本例中只使用216种安全颜色,即所谓的netscape色块,这216种颜色代表0,51,102,153,204这五个颜色值以及每一种原色(红,绿,蓝).在实现网页拾色器时,需要应用JavaScript的数组,
新建一个页面,添加一个TextBox控件,并为此控件设定自定义onClick事件,并调用JavaScript函数colorpick(),代码如下:
<asp:TextBox ID="TextBox1" runat="server" readonly="true" size="3" style="background-color:#000000" Width="67px" Height="13px" onClick="colorpick(this)"></asp:TextBox>
自定义JavaScript函数代码如下:
<script language="javascript">
function colorpick(field){
var rtn = window.showModalDialog("Default2.aspx","","dialogWidth:225px;dialogHeight:170px;status:no;help:no;scrolling=no;scrollbars=no");
if(rtn!=null)
field.style.background=rtn;
return;
}
</script>
上面函数调用的Default2.aspx的HTML代码如下:
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<script language="JavaScript">
<!--
var h = new Array(6)
h[0] = "FF";
h[1] = "CC";
h[2] = "99";
h[3] = "66";
h[4] = "33";
h[5] = "00";
function action(RGB) {
//alert('您选择的颜色是:#'+RGB);
parent.window.returnValue="#"+RGB;
window.close();
}
function Mcell(R, G, B) {
document.write('<td bgcolor="#' + R + G + B + '">');
document.write('<a href="#" onClick="action(/'' + (R + G + B) + '/')">');
document.write('<img border=0 height=12 width=12 /')" alt=/'#'+R+G+B+'/'>');
document.write('</a>');
document.write('</td>');
}
function Mtr(R, B) {
document.write('<tr>');
for (var i = 0; i < 6; ++i) {
Mcell(R, h[i], B);
}
document.write('</tr>')
}
function Mtable(B) {
document.write('<table cellpadding=0 cellspacing=0 border=0>');
for (var i = 0; i < 6; ++i) {
Mtr(h[i], B);
}
document.write('</table>');
}
function Mcube() {
document.write('<table cellpadding=0 cellspacing=0 border=0><tr>'); //
for (var i = 0; i < 6; ++i) {
if(i%3==0){
document.write('<tr>');
}
document.write('<td bgcolor="#FFFFFF">');
Mtable(h[i])
document.write('</td>');
}
if(i%3==0){
document.write('</tr>');
}
document.write('</tr></table>');
}
Mcube()
-->
</script>
</body>
</html>
新建一个页面,添加一个TextBox控件,并为此控件设定自定义onClick事件,并调用JavaScript函数colorpick(),代码如下:
<asp:TextBox ID="TextBox1" runat="server" readonly="true" size="3" style="background-color:#000000" Width="67px" Height="13px" onClick="colorpick(this)"></asp:TextBox>
自定义JavaScript函数代码如下:
<script language="javascript">
function colorpick(field){
var rtn = window.showModalDialog("Default2.aspx","","dialogWidth:225px;dialogHeight:170px;status:no;help:no;scrolling=no;scrollbars=no");
if(rtn!=null)
field.style.background=rtn;
return;
}
</script>
上面函数调用的Default2.aspx的HTML代码如下:
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<script language="JavaScript">
<!--
var h = new Array(6)
h[0] = "FF";
h[1] = "CC";
h[2] = "99";
h[3] = "66";
h[4] = "33";
h[5] = "00";
function action(RGB) {
//alert('您选择的颜色是:#'+RGB);
parent.window.returnValue="#"+RGB;
window.close();
}
function Mcell(R, G, B) {
document.write('<td bgcolor="#' + R + G + B + '">');
document.write('<a href="#" onClick="action(/'' + (R + G + B) + '/')">');
document.write('<img border=0 height=12 width=12 /')" alt=/'#'+R+G+B+'/'>');
document.write('</a>');
document.write('</td>');
}
function Mtr(R, B) {
document.write('<tr>');
for (var i = 0; i < 6; ++i) {
Mcell(R, h[i], B);
}
document.write('</tr>')
}
function Mtable(B) {
document.write('<table cellpadding=0 cellspacing=0 border=0>');
for (var i = 0; i < 6; ++i) {
Mtr(h[i], B);
}
document.write('</table>');
}
function Mcube() {
document.write('<table cellpadding=0 cellspacing=0 border=0><tr>'); //
for (var i = 0; i < 6; ++i) {
if(i%3==0){
document.write('<tr>');
}
document.write('<td bgcolor="#FFFFFF">');
Mtable(h[i])
document.write('</td>');
}
if(i%3==0){
document.write('</tr>');
}
document.write('</tr></table>');
}
Mcube()
-->
</script>
</body>
</html>
3289

被折叠的 条评论
为什么被折叠?



