贴出你自己最为优秀的、最有自豪感的一段javascript代码,可以是...

Soft21 2001-09-03 04:15:03
我的分数留着也没用,给大家散散分,愿大家学习快乐!
要求:
a. 贴出你自己最为优秀的、最有自豪感的一段javascript代码,可以是一个函数,可以是一个算法,可以是一个小技巧,可以是一个思路,可以是一个解决问题的过程和方法,可以是一个尝试解决问题的过程(还没解决),可以是。。。。。。
b. 不可抄袭别人的代码
c. 要有一定的技术含量
d. 要求具有良好的可读性
e. 贴出代码的必有分,分多分少主要取决于你的代码质量和是否满足要求。
f. 分数不够,我会另开问题给分

// *******************************************************************************************************
我先来一小段,欢迎大家继续:

我们在Web编程中,经常用到控件组的概念,如:我们可以在页面中动态生成一组CheckBox的输入框(它们具有相同的name),如:
<input type="CheckBox" name="cnlChkBox" id="cnlChkBox" value="1">
<input type="CheckBox" name="cnlChkBox" id="cnlChkBox" value="2">
<input type="CheckBox" name="cnlChkBox" id="cnlChkBox" value="3">
<input type="CheckBox" name="cnlChkBox" id="cnlChkBox" value="4">
然后在javascript客户端中,我们得判断该cnlChkBox组中有多少个元素(有可能一个也没有),我们还想对一个一个元素进行访问(如:判断

是否选中),并取得它得Value值,如下:
function fnTest()
{
var arrChks = frmForm1.elements("cnlChkBox");
var intLength = 0;
var arrStudentInfo;

if(arrChks == null) // 一个元素都没有
{
intLength = 0;
}
else if(arrChks.length == 1) // 只有一个元素
{
intLength = 1;
arrChks = new Array(arrChks);
}
else
intLength = arrChks.length; // 两个元素以上

for(var i = 0; i < intLength; i++)
{
if(arrChks[i].checked)
{
// ... = arrChks[i].value;
}
}
}
...全文
184 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
Soft21 2001-09-05
  • 打赏
  • 举报
回复
还有人愿意参与吗?今晚18:00结账给分
blackdove 2001-09-05
  • 打赏
  • 举报
回复
有大将风度。
Soft21,以后你不来了吗?我会想你的!
哈哈!
ringphone 2001-09-05
  • 打赏
  • 举报
回复
忘了说了,上面代码中<img src="images/sel_curr.gif">的GIF我不能帖上来,自己做吧,就是颜色选择对话框中右边选择灰度框旁边的小三角图案,5*9大小。
ringphone 2001-09-05
  • 打赏
  • 举报
回复
模拟Windows标准颜色选择对话框
调用:
<script language = "javascript">
var restr = showModalDialog("set_color.html", "", "dialogWidth:29em; dialogHeight:17.5em; status:0");
//restr 就是返回的颜色代码,没选择就是NULL
</SCRIPT>

set_color.html代码:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>颜色设置</TITLE>
<META content="text/html; charset=gb2312" http-equiv=Content-Type>
<META content="MSHTML 5.00.2920.0" name=GENERATOR>
<META content="Author" name="临风(Ringphone)">
<STYLE type=text/css>
TD{FONT-SIZE: 9pt}
input{font:verdana,arial,sans-serif;FONT-SIZE: 12px;line-height: -3px}
.defcol{font-size:1px;border-left:buttonshadow 2px solid; border-right:buttonhighlight 2px solid; border-top: buttonshadow 2px solid; border-bottom:buttonhighlight 2px solid}
.container{border-left:buttonshadow 1px solid; border-right:buttonhighlight 1px solid; border-top: buttonshadow 1px solid; border-bottom:buttonhighlight 1px solid}
BODY {FONT-SIZE: 10.8pt}
BUTTON { WIDTH: 5em}
</STYLE>
<SCRIPT language="JavaScript">
<!--
var SelRGB = '#000000';
var DrRGB = '#000000';
var SelGRAY = '120';

var hexch = new Array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F');

function ToHex(n)
{
var h, l;

n = Math.round(n);
l = n % 16;
h = Math.floor((n / 16)) % 16;
return (hexch[h] + hexch[l]);
}

function DoColor(c, cl)
{
var r, g, b,l;

r = '0x' + c.substring(1, 3);
g = '0x' + c.substring(3, 5);
b = '0x' + c.substring(5, 7);

l = parseInt(cl);

if(l > 120)
{
l = l - 120;

r = (r * (120 - l) + 255 * l) / 120;
g = (g * (120 - l) + 255 * l) / 120;
b = (b * (120 - l) + 255 * l) / 120;
}
else
{
r = (r * l) / 120;
g = (g * l) / 120;
b = (b * l) / 120;
}

return '#' + ToHex(r) + ToHex(g) + ToHex(b);
}

function EndColor()
{
var i;

if(DrRGB != SelRGB)
{
DrRGB = SelRGB;
for(i = 0; i <= 40; i ++)
GrayTable.rows(i).bgColor = DoColor(SelRGB, 240 - i * 6);
}

SelColor.value = DoColor(RGB.innerText, SelGRAY);
ShowColor.bgColor = SelColor.value;
}

function return_color()
{
window.returnValue = SelColor.value;
window.close();
}

function sel_color(type)
{
var r,g,b,c;

if(type == "BASE")
{
SelRGB = event.srcElement.style.backgroundColor;
RGB.innerText = SelRGB;

r = '0x' + SelRGB.substring(1, 3);
g = '0x' + SelRGB.substring(3, 5);
b = '0x' + SelRGB.substring(5, 7);

colR.value = parseInt(r);
colG.value = parseInt(g);
colB.value = parseInt(b);

SelGRAY = 120;
colL.value = 120;
colmark.style.pixelTop = GrayTable.rows(20).offsetTop - 2;

for(var i=0;i<30;i++)
if(SelRGB == MainColor.rows(0).cells(i).bgColor)
{
colE.value = i * 8;
colS.value = 240;

EndColor();
return;
}
}
else
{
if(type == "RGB")
{
c = event.srcElement.bgColor;
SelRGB = c;
colE.value = event.srcElement.cellIndex * 8;
colS.value = 240 - 16 * Math.floor((event.srcElement.sourceIndex - event.srcElement.parentElement.parentElement.firstChild.firstChild.sourceIndex)/31);
}
else if(type == "GRAY")
{
c = DoColor(RGB.innerText, SelGRAY);
colL.value = event.srcElement.title;
colmark.style.pixelTop = event.srcElement.offsetTop - 2;
}

r = '0x' + c.substring(1, 3);
g = '0x' + c.substring(3, 5);
b = '0x' + c.substring(5, 7);

colR.value = parseInt(r);
colG.value = parseInt(g);
colB.value = parseInt(b);
}
EndColor();
}

function sel_colorover(type)
{
if(type == "RGB")
RGB.innerText = event.srcElement.bgColor;
else if(type == "GRAY")
SelGRAY = "" + event.srcElement.title;
EndColor();
}

function sel_colorout(type)
{
if(type == "RGB")
RGB.innerText = SelRGB;
else if(type == "GRAY")
SelGRAY = colL.value;
EndColor();
}

//-->
</SCRIPT>
</HEAD>
<BODY bgColor=menu>
<CENTER>
<TABLE border=0 cellPadding=0 cellSpacing=0>
<tr>
<td valign=top rowspan=2>
<TABLE border=0 cellPadding=0 cellSpacing=4 onclick="sel_color('BASE')">
<tr><td colspan=8>基本颜色:</td></tr>
<script language="javascript">
<!--
var cr = new Array("ff","99","66","00");
var cg = new Array("99","66","ff","00");
var cb = new Array("00","99","ff");
var x=0,y=0,z=0;
var col;
for(var j=0;j<6;j++)
{
document.writeln("<tr>");

for(var i=0;i<8;i++)
{
col = "#" + cr[x] + cg[y] + cb[z];
document.writeln("<td><div class=defcol style=\"BACKGROUND-COLOR:" + col + ";width:20;height:15\"></div></td>");
y ++;
if(y > 3)
{
y = 0;
x ++;
if(x > 3)
{
x = 0;
z ++;
if(z > 2)
z = 0;
}
}
}
document.writeln("</tr>");
}
//-->
</script>
</table>
<br>
<DIV ALIGN=RIGHT>
<TABLE border=0 cellPadding=0 cellSpacing=2>
<tr>
<td align=right>色调(E):</td>
<td><input type=text size=3 readonly name="colE" value="160"></td>
<td>红(R):</td>
<td><input type=text size=3 readonly name="colR" value="0"></td>
</tr>
<tr>
<td align=right>饱和度(S):</td>
<td><input type=text size=3 readonly name="colS" value="0"></td>
<td>绿(G):</td>
<td><input type=text size=3 readonly name="colG" value="0"></td>
</tr>
<tr>
<td align=right>亮度(L):</td>
<td><input type=text size=3 readonly name="colL" value="120"></td>
<td>蓝(B):</td>
<td><input type=text size=3 readonly name="colB" value="0"></td>
</tr>
</table>
</div>
</td>
<td width=8></td>
<td>
<TABLE border=0 cellPadding=0 cellSpacing=0>
<TR>
<TD>
<div class=container>
<TABLE border=0 cellPadding=0 cellSpacing=0 id=MainColor onclick="sel_color('RGB')" onmouseover="sel_colorover('RGB')" onmouseout="sel_colorout('RGB')">
<script language="JavaScript">
<!--
function wc(r, g, b, n)
{
r = ((r * 16 + r) * 3 * (15 - n) + 0x80 * n) / 15;
g = ((g * 16 + g) * 3 * (15 - n) + 0x80 * n) / 15;
b = ((b * 16 + b) * 3 * (15 - n) + 0x80 * n) / 15;

document.write('<TD BGCOLOR=#' + ToHex(r) + ToHex(g) + ToHex(b) + ' height=10 width=6></TD>');
}

var cnum = new Array(1, 0, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0);

for(i = 0; i < 16; i ++)
{
document.write('<TR>');
for(j = 0; j < 30; j ++)
{
n1 = j % 5;
n2 = Math.floor(j / 5) * 3;
n3 = n2 + 3;

wc((cnum[n3] * n1 + cnum[n2] * (5 - n1)),
(cnum[n3 + 1] * n1 + cnum[n2 + 1] * (5 - n1)),
(cnum[n3 + 2] * n1 + cnum[n2 + 2] * (5 - n1)), i);
}

document.writeln('</TR>');
}
//-->
</SCRIPT>
</TABLE>
</div>
</TD>
<td width=8></td>
<TD>
<div class=container>
<TABLE border=0 cellPadding=0 cellSpacing=0 id=GrayTable onclick="sel_color('GRAY')" onmouseover="sel_colorover('GRAY')" onmouseout="sel_colorout('GRAY')">
<SCRIPT language=JavaScript>
<!--
for(i = 240; i >= 0; i -= 6)
document.write('<TR BGCOLOR=#' + ToHex(i) + ToHex(i) + ToHex(i) + '><TD TITLE=' + i + ' height=4 width=20></TD></TR>');
//-->
</SCRIPT>
</TABLE>
</div>
</TD>
<td width=5>
<div id=colmark style="position:absolute;width:5px; height:9px;z-index:1">
<img src="images/sel_curr.gif">
</div>
</td>
</TR>
<TR>
<td colspan=4>
<TABLE border=0 cellPadding=2 cellSpacing=3 width="100%">
<tr>
<TD align=middle rowSpan=2>
<TABLE border=1 class="container" cellPadding=0 cellSpacing=0 height=30 id=ShowColor bgcolor=#000000 width=50>
<TR><TD></TD></TR>
</TABLE>
颜色|纯色
</TD>
<TD rowSpan=2 nowrap>
基色: <SPAN id=RGB>#000000</SPAN><BR>
代码: <INPUT id=SelColor size=7 value="#000000">
</TD>
<TD>
<input type=submit id=Ok value="确定" onclick="return_color()">
</TD>
</TR>
<TR>
<TD><input type=button onclick="window.close()" value="取消"></TD>
</TR>
</TABLE>
</td>
</tr>
</table>
</td>
</tr>
</table>
</CENTER>
</BODY>
</HTML>
makefile 2001-09-04
  • 打赏
  • 举报
回复
以下代码本来是想实现在单击,表头时对表内的数据进行排序,类似explor对文件名
字段单击,就能对文件名排序,但实现出来发现速度很满。大家还有什么好的点子。
例如利用active控件。
<html>
<body>
<script>
function switchRow(i,j,c)
{
var t,k;
for (k=0;k<c.rows[i].cells.length;k++)
{
t=c.rows[i].cells[k].innerText;
c.rows[i].cells[k].innerText=c.rows[j].cells[k].innerText;
c.rows[j].cells[k].innerText=t;
}
}
function swapRow(a, i, j,b)
{
var T,k;
T = a[i];
a[i] = a[j];
a[j] = T;
switchRow(i+1,j+1,b);
}


function QuickSortTable(a, lo0, hi0,b)
{
var lo = lo0;
var hi = hi0;
var no=0;
var mid;

if ( hi0 > lo0)
{

/* Arbitrarily establishing partition element as the midpoint of
* the array.
*/
no = parseInt((lo0 + hi0 )/2+.5);
mid = a[no];

// loop through the array until indices cross
while( lo <= hi )
{
/* find the first element that is greater than or equal to
* the partition element starting from the left Index.
*/
while( ( lo < hi0 ) && ( a[lo] < mid ))
++lo;

/* find an element that is smaller than or equal to
* the partition element starting from the right Index.
*/
while( ( hi > lo0 ) && ( a[hi] > mid ))
--hi;

// if the indexes have not crossed, swap
if( lo <= hi )
{
if (lo!=hi)
swapRow(a, lo, hi,b);
++lo;
--hi;
}
}

/* If the right index has not reached the left side of array
* must now sort the left partition.
*/
if( lo0 < hi )
QuickSortTable( a, lo0, hi,b);

/* If the left index has not reached the right side of array
* must now sort the right partition.
*/
if( lo < hi0 )
QuickSortTable( a, lo, hi0,b );

}
}



function sortTable(a,b)
{
QuickSortTable(a,0,a.length-1,b);
}

var flag=0;
function callone(tb,no,tp)
{
var tobj=tb;
var i,j;
var sdat=new Array(tobj.rows.length-1);
for (i=1;i<tobj.rows.length;i++)
{
if (tp=="int")
sdat[i-1]=parseInt(tobj.rows(i).cells(no-1).innerText);
else if(tp=="double")
sdat[i-1]=parseFloat(tobj.rows(i).cells(no-1).innerText);
else
sdat[i-1]=tobj.rows(i).cells(no-1).innerText;
}
sortTable(sdat,tobj);
}
function addrow()
{

with(document.all.xixi)
{
for(i=1;i<500;i++)
{
var k=insertRow();
var my=k.insertCell();
my.innerText=Math.random()*100;
k.insertCell();
k.insertCell();
}
}
}
</script>
<table id=xixi onclick="callone(this,1,'double')" cols=3 border>
<thead>
<tr>
<th>col1</th><th>col2</th><th>col3</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
<button onclick="addrow()">增加记录</button>

</body>
</html>
  • 打赏
  • 举报
回复
哇!好长的一段代码啊!
Soft21 2001-09-04
  • 打赏
  • 举报
回复
没人愿意交流吗?

To:blow_wy(老鹰)
引用代码,应该是可以的吧

To:wzy9645(软件我不懂)
有时候看代码是必须的(如:代码复审),我已经养成了这种习惯
AiNet 2001-09-04
  • 打赏
  • 举报
回复
....
....
本来是来学C++builder的....
不知不觉就跑这儿来了
都很久没弄过JavaScript了,
贴个去年做的
还有相应的CSS样式文件(win2kstyle.css,3dmaxstyle.css,powerstyle.css)
和行为定义HTC文件menulink.htc
就不贴了,
也没什么难的,就是内容有些多,整个是一个对象的定义,使用说明在前面
想看就看,不想看就算了 :)

动态鼠标菜单 Ver 0.9 By abcbcafe.com

// -----------------------------------------------------------------------------

Mouse ContextMenu Object Ver 0.9.0 - By abcbcafe.com
动态鼠标菜单 Ver 0.9.0 - Trilobite

For others DHTML scripts, all Free.
Please visit : http://www.abcbcafe.com
Email to : carte@netease.com

// -----------------------------------------------------------------------------

[ Mouse ContextMenu ] ( Ver 0.9.0 Evaluation Version )

- Description -

... ...

- Usage -


[ 动态鼠标菜单 ] ( 版本0.9.0)

- 对象描述 -

动态鼠标菜单是一种可以由用户自定义的鼠标右键菜单. 你可以自由的加入,删除,
或者替换菜单项, 并且能够根据所载入的CSS文件的不同来改变菜单的风格. 如果你愿
意, 甚至可以在同一个页面定义多个菜单对象, 并随时使用其中之一(请注意: 同一时
刻, 只能有一个菜单对象处于活动态, 其它的将被禁止, 浏览者不会希望同时出现多个
菜单), 另外,你还可以随时恢复IE默认菜单.

// -----------------------------------------------------------------------------

- 使用说明 -

通常状态下, 你只需要为页面定义一个菜单. 请首先在需要菜单的页面<HEAD>标签
里加入如下语句:

<link type="text/css" rel="stylesheet" href="css/mousemenustyle.css">

mousemenustyle.css文件是风格样式定义文件,你可以选择性的加入其中之一.( 请
注意: mousemenustyle.css 文件应该位于当前页面所在目录的子目录css下 )

<script src="script/mousemenu.js" language="JavaScript"></script>

该语句将在当前页面加入对象的实现代码, mousemenu.js 文件应该位于script
子目录下.
之后, 你就可以进行对象的定义, 以及修改了, 如下:

<script for=window event=onload language="JavaScript">
mouseMenuObj = new mouseMenu();
mouseMenuObj.enableMenu();
</script>

一般情况下, 对象定义应该在window.onload发生时. 当你使用了enableMenu()方
法后, 对象将成为活动态, 替代其它菜单( 包括IE的默认菜单 ). 不可能有一个以上的
对象被enable, 如果你想enable其它对象, 请先对enable的对象使用disableMenu()方
法. 否则enableMenu()方法将无效. 如果想修改菜单项, 建议把修改动作放在
enableMenu()方法之前. 如下:

<script for=window event=onload language="JavaScript">
mouseMenuObj = new mouseMenu();
mouseMenuObj.addItem("留言","image/message.gif","message.html","这是title属性显示的内容","这里可以写注释");
mouseMenuObj.addItem("关于","image/about.gif","about.html","这是title属性显示的内容","这里可以写注释");
mouseMenuObj.enableMenu();
</script>

在运行时, 你也可以动态加入, 删除, 或者替换菜单项. 如下:

mouseMenuObj.addItem("留言","image/message.gif","message.html","这是title属性显示的内容","这里可以写注释");

mouseMenuObj.delItem("关于");

如果要把 "留言" 项替换为 "关于" :

mouseMenuObj.replaceItem("留言","关于","image/about.gif","about.html","这是title属性显示的内容","这里可以写注释");

另外, 可以用setHome()方法对 "首页" 项的参数进行修改:

mouseMenuObj.setHome("index.html","Home Page","Home Note");

如果不修改, 将默认连接到 index.html 文件

*/


var menuBeing = false;

function mouseMenu(mStyle)
{
var menuContainer = document.createElement("DIV");
var menuLayoutTable = document.createElement("TABLE");
var menuMainTable = document.createElement("TABLE");
var menuCustomTable = document.createElement("TABLE");
var menuCommandTable = document.createElement("TABLE");



menuContainer.className = "menuContainerStyle";
menuLayoutTable.cellSpacing = 0;
menuLayoutTable.className = "menuLayoutTableStyle";
menuMainTable.className = "menuMainTableStyle";
menuMainTable.cellSpacing = 1;
menuCustomTable.className = "menuCustomTableStyle";
menuCustomTable.cellSpacing = 1;
menuCommandTable.className = "menuCommandTableStyle";
menuCommandTable.cellSpacing = 1;

for(i=0;i<4;i++)
menuLayoutTable.insertRow();

var MTR = menuLayoutTable.rows(0);
var MMR = menuLayoutTable.rows(1);
var MUR = menuLayoutTable.rows(2);
var MCR = menuLayoutTable.rows(3);

for(i=0;i<2;i++)
MTR.insertCell();

MTR.className = "menuRowStyle";
MTR.cells[0].className = "menuLogoStyle";
MTR.cells[1].className = "menuTitleStyle";
if( (MTR.cells[0].currentStyle.fontSize == "0px") || (mStyle == null) ) mStyle = 0;

var homePage = generateItem(mStyle,menuMainTable,"首页","image/home.gif","index.html","欢迎访问我的主页 !","hNote");
MMR.insertCell();
MMR.cells[0].className = "menuMainStyle";
MMR.cells[0].colSpan = 2;
MMR.cells[0].insertBefore(menuMainTable);

MUR.insertCell();
MUR.cells[0].className = "menuCustomStyle";
MUR.cells[0].colSpan = 2;
MUR.cells[0].insertBefore(menuCustomTable);

generateItem(mStyle,menuCommandTable,"刷新","image/refresh.gif"," < > ","页面刷新! ","rNote");
generateItem(mStyle,menuCommandTable,"前进","image/forward.gif"," <<< "," 前进! ","fNote");
generateItem(mStyle,menuCommandTable,"后退","image/back.gif"," >>> "," 后退! ","bNote");
MCR.insertCell();
MCR.cells[0].className = "menuCommandStyle"
MCR.cells[0].colSpan = 2;
MCR.cells[0].insertBefore(menuCommandTable);

menuContainer.insertBefore(menuLayoutTable);
document.body.insertBefore(menuContainer);

this.menuStyle = mStyle;
this.enableFlag = false;
this.customMenuLength = 0;
this.homeItem = homePage;
this.customMenu = menuCustomTable;

switch(MTR.cells[0].currentStyle.fontSize)
{
case "0px" : {
MTR.cells[1].innerHTML = "<span style='cursor:default;color:#e0e0e0;font-family : Arial, serif;font-size:8pt'>MAX</span>";
break; }
case "1px" : {
MTR.cells[1].innerHTML = "<span style='cursor:default;color:#e0e0e0;font-family : Arial, serif;font-size:8pt'>WINDOWS</span>";
break; }
case "2px" : {
MTR.cells[0].rowSpan = 4;
MTR.cells[1].rowSpan = 4;
MTR.cells[1].innerHTML = "<span style='cursor:default;color:#e0e0e0;font-family : Arial, serif;font-size:30pt'> </span>";
break; }
}

this.containerName = "container";
eval(this.containerName + "= menuContainer");
this.oName = "oSelf";
eval(this.oName + " = this");

this.initMenu = initMenu;
this.showMenu = showMenu;
this.hideMenu = hideMenu;
this.enableMenu = enableMenu;
this.disableMenu = disableMenu;

this.addItem = addItem;
this.delItem = delItem;
this.searchItem = searchItem;
this.replaceItem = replaceItem;

this.setHome = setHome;
this.destruction = destruction;

return this
}

function initMenu() {}

function searchItem(tName)
{
var skip = true;
if(this.customMenuLength > 0)
for(tRow in this.customMenu.rows)
{
if(skip == true) { skip = false ; continue; }
if(this.customMenu.rows[tRow].cells[1].innerText == tName)
return this.customMenu.rows[tRow]
}
return null
}


function replaceItem(rName,nName,nImage,nURL,nTitle,nNote)
{
var rItem = this.searchItem(rName);
if(rItem != null)
{
rItem.cells[0].children[0].src = nImage;
rItem.cells[0].children[0].title = nURL;
rItem.cells[1].innerText = nName;
rItem.cells[1].title = nTitle;
rItem.cells[1].setAttribute("url",nURL);
rItem.cells[1].setAttribute("note",nNote);
}
}

function setHome(hURL,hTitle,hNote)
{
this.homeItem.cells[0].title = hURL;
if(hTitle!=null) this.homeItem.cells[1].title = hTitle;
this.homeItem.cells[1].setAttribute("url",hURL);
this.homeItem.cells[1].setAttribute("note",hNote);
}

function addItem(iName,iImage,iURL,iTitle,iNote)
{
generateItem(this.menuStyle,this.customMenu,iName,iImage,iURL,iTitle,iNote);
this.customMenuLength++;
}

function delItem(iName)
{
var dItem = this.searchItem(iName);
if(dItem != null) { dItem.removeNode(true); this.customMenuLength--; }
}

function destruction()
{
container.removeNode(true);
}

function showMenu()
{
var correctX = document.body.clientWidth - event.clientX;
var correctY = document.body.clientHeight - event.clientY;
if(correctX < container.offsetWidth) correctX = container.offsetWidth; else correctX = 0;
if(correctY < container.offsetHeight) correctY = container.offsetHeight; else correctY = 0;
container.style.top = document.body.scrollTop + event.clientY - correctY;
container.style.left = document.body.scrollLeft + event.clientX - correctX;
container.filters.alpha.opacity = 0;
container.style.display = "block";
fadein(container);
}

function hideMenu()
{
container.style.display = "none";
}

function enableMenu()
{
if((this.enableFlag == false) && (menuBeing == false))
{
document.body.oncontextmenu = disableOrigin;
document.attachEvent("oncontextmenu",oSelf.showMenu);
document.attachEvent("onclick",oSelf.hideMenu);
this.enableFlag = true;
menuBeing = true;
}
}

function disableMenu()
{
if((this.enableFlag == true) && (menuBeing == true))
{
document.body.oncontextmenu = restoreOrigin;
document.detachEvent("oncontextmenu",oSelf.showMenu);
document.detachEvent("onclick",oSelf.hideMenu);
this.enableFlag = false;
menuBeing = false;
}
}

function disableOrigin()
{
return false;
}

function restoreOrigin()
{
return true;
}

function generateItem(iStyle,parentTable,iName,iImage,iURL,iTitle,iNote)
{
var iRow = parentTable.insertRow();
var iLogo = document.createElement("IMG");
for(i=0;i<2;i++)
iRow.insertCell();

switch(iStyle)
{
case 0 : { iLogo.className = "itemLogoStyleColor"; break }
case 1 : { iLogo.className = "itemLogoStyle3D"; break }
default : { iLogo.className = "itemLogoStyleColor"; break }
}

iLogo.src = iImage;
iLogo.title = iURL;
iRow.cells[0].insertBefore(iLogo);

switch(iStyle)
{
case 0 : { iRow.cells[1].className = "itemContentStyleColor"; break }
case 1 : { iRow.cells[1].className = "itemContentStyle3D"; break }
default : { iRow.cells[1].className = "itemContentStyleColor"; break }
}

iRow.cells[1].innerText = iName;
iRow.cells[1].title = iTitle;
iRow.cells[1].setAttribute("url",iURL);
iRow.cells[1].setAttribute("note",iNote);

return iRow
}

// ----------------------------------------------------------------

function fadein(obj)
{
o=obj;
clearID=setInterval("fadeObj(o)",50);
}

function fadeout(obj)
{
clearInterval(clearID);
obj.filters.alpha.opacity=10;
}

function fadeObj(theobj)
{
if(theobj.filters.alpha.opacity<=90)
theobj.filters.alpha.opacity+=9
else if(window.clearID)
clearInterval(clearID)
}
Soft21 2001-09-04
  • 打赏
  • 举报
回复
还有人愿意参与吗?
明天(9.5)晚上结账啰!
另外,我将会仔细看代码并作实验,并提出我个人的看法,也许以后我会比较少来该版面了。
luhang 2001-09-04
  • 打赏
  • 举报
回复
去看http://www.gwbntj.net/tgs.htm,那个是我作的,还没见别的地方用过
aukw 2001-09-03
  • 打赏
  • 举报
回复
<b>test</b>
aukw 2001-09-03
  • 打赏
  • 举报
回复
<b><i>test</b></i>
wzy9645 2001-09-03
  • 打赏
  • 举报
回复
我是最讨厌看代码的!!!
████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████
  • 打赏
  • 举报
回复
我没有,来学习一下,不知可否有权引用这里的代码啊?

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧