-----------------------------------------------------------------
emu
还有几个经典问题:在网上看到一个效果不错,下回来以看是VBSCRIPT的,用JSCRIPT好象就是做不来(比如把confirm的焦点默认在取消上?),:-((在书店看到一本书也不错,看一下封底:¥×××大元,:-((在csdn发现一个网友有点意思,探究一下是GG还是JJ,却发现是个历史悬案,:-((
http://www.csdn.net/expert/topic/728/728382.xml?temp=.5561945-----------------------------------------------------------------
chenzengxi
异步调用在WebService里面应用的可能比较广泛,可以同一时间对服务器进行多次访问,从而加速数据的提取速度。
还有我发现,在例如一个目录树里做全展开操作,同步递归的效果是完成才看到显示,异步递归的效果是看到一层层显示到全部,呵呵,很有意思。还有关于字符串累加的讨论,其实是很实用的,我就有大量的这样应用:
http://www.csdn.net/expert/topic/752/752688.xml?temp=.1573297还有不知道算不算IE6的BUG一个:
http://www.csdn.net/expert/topic/724/724539.xml?temp=6.451052E-02-----------------------------------------------------------------
chenzengxi
HTA(HTML Applications),是个挺好的东西,HTML应用程序,不过我发现限制蛮多的,还要有IE的支持才能运行.
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/hta/reference/objects/hta.asp
不知道那有详细的中文资料呀?-----------------------------------------------------------------
Lostinet
>>>>在网上看到一个效果不错,下回来以看是VBSCRIPT的,用JSCRIPT好象就是做不来(比如把confirm的焦点默认在取消上?),:-((那个是VBS提供的内置函数,起源于VB。
JScript是没有提供这个的。>>>>>还有我发现,在例如一个目录树里做全展开操作,同步递归的效果是完成才看到显示,异步递归的效果是看到一层层显示到全部,呵呵,很有意思。异步问题如果是简单的还好,例如,整个过程都只是一个完整的程序进行,没有任何打扰。
但是经常遇到的问题是,过程到了一般,可能要求返回,或者取消,或者要求把整个对象系都要删除。
(例如展开了一个菜单。但是用户由立刻把它关闭。)
处理这些突法事件很麻烦。对象必须能够自主地完成这些取消的工作。
不同的异步模块还要定一个协议,说明现在是否能取消,情况怎样等等。
这在DHTML下却是很麻烦的事情。-----------------------------------------------------------------
Lostinet
HTA(HTML Applications),没有什么好说明的。
你只需要知道,它的权限很大就够了。
在HTA,可以访问任何域名下的资源,和本地资源。
--------------
MICROSOFT。NET的更新程序也是用HTA来做框架的。-----------------------------------------------------------------
Lostinet
对于前面的更正
parseInt(elementA.currentStyle.isVisited)?"yes":"no"-----------------------------------------------------------------
chenzengxi
to Lostinet
你说的问题,还确实是个问题,那是最严谨的做法,虽然操作者可能永远都不会这样操作,谢谢你提醒。-----------------------------------------------------------------
chenzengxi
Lostinet兄能不能写个HTA对Access的增删改的例子。-----------------------------------------------------------------
chenzengxi
我另开一个贴子吧,呵呵。-----------------------------------------------------------------
emu
早该如此了,我这个帖子早已跑题了。-----------------------------------------------------------------
Lostinet
讨论无边界嘛。何必拘谨于形式呢。。
:)-----------------------------------------------------------------
Lostinet
讨论无边界嘛。何必拘谨于形式呢。。
:)-----------------------------------------------------------------
emu
我的本意一方面是想让后来者知道他们有哪些坎要过,一方面想从高手那里知道自己还有那些坎要过。跑题了就达不到原来的目的了。-----------------------------------------------------------------
qiushuiwuhen
跑得好,最好永不结贴,永远跑下去,让大家都来关注和收藏....地球是圆的,只要有恒心,南辕北辙都行-----------------------------------------------------------------
linhaibo
写 HTC 吧...
模仿 Delphi 里面的控件.
HTC思路很好,速度却不能叫人满意(可能是我的写法问题). :(-----------------------------------------------------------------
linhaibo
浏览器和应用程序的交互也是个问题.
类似QQ聊天室的操作就是比较成功的例子他们把捕获浏览器的页面跳转事件带来的参数 传递给 应用程序.
应用程序通过 IE 控件可以再直接修改网页内容.我想,应用程序向“半Web页”方面转换也是个趋势
固定部分用应用程序完成,其他的都可以用 网页来实现。-----------------------------------------------------------------
emu
这算哈希表吗?<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body><SCRIPT LANGUAGE="JavaScript">
<!--
var ar = new Array();
ar["abc"] = "123";
ar["def"] = "456";
alert(ar["abc"]);
alert(ar["def"]);
//-->
</SCRIPT></body>
</html>在秋水发给我的东西里面发现的用法。如果是哈希表,怎么遍历它呢?-----------------------------------------------------------------
emu
哦,这么遍历:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body><SCRIPT LANGUAGE="JavaScript">
<!--
var ar = new Array();
ar["abc"] = "123";
ar["def"] = "456";for (a in ar)
alert(a+":"+ar[a])
//-->
</SCRIPT></body>
</html>今天又学到一招,谢谢秋水。-----------------------------------------------------------------
emu
每个程序员都要过这几道关口:程序写好了,忘存就把窗口关了,更该死的是还按了确定!程序保存了,但是不小心删了,更该死的是顺手清了回收站(有些初学者不知从哪学来的坏习惯,还有用惯了苹果电脑的家伙们也是)程序保存了,没有不小心删了,只是从vss上get了一个旧的lastestVersion吧它replace了(唉,我昨晚干的好事就是)。没有进行任何误操作,只是硬盘忽然就罢工了,拿去维修时还被告知无法恢复数据(我打赌十有八九是IBM的,这两年的IBM硬盘听说都是国产的,据说产地就是深圳,不但爱罢工,而且压根恢复不了数据,现在已排为最低性价比硬盘了,使用IBM硬盘的诸位赶快刻光盘罢)硬盘没坏,只是机器忽然掉电了,scandisk(chkdsk?fsck?)时报了点儿错(天,早说了不要用FAT和EXT2了)。什么坏事也没干,系统崩溃了。-----------------------------------------------------------------
emu
新问题:计算误差问题,我今天碰上了。看看秋水写的例子:<script>
for(s=2;s<=10;s++){
var c=0;
for(n=1;n<100;n++)
for(p=1;p<=100000;p*=s){
t=n/(n/p)
if(p!=t)document.write((++c)+"."+n+"/"+p+"="+t+"<br>")
}
document.write(s+" is over:"+c+"<br>")
}
</script>-----------------------------------------------------------------
Lostinet
计算误差是语言问题,,-----------------------------------------------------------------
emu
http://www.csdn.net/expert/topic/789/789880.xml?temp=.7990534-----------------------------------------------------------------
emu
关于树图的补充:孟版主的xml树图现在可以下载了,挺有意思的,大家来看呐:http://lucky.myrice.com/temp/XML.zip
或
http://colorweb.go.163.com/temp/XML.zip
或
http://go2.163.com/stonelf/tools/deeptree1.zip-----------------------------------------------------------------
emu
新发现:IE5的数组越界bug:
<html>
<body>
<SCRIPT>
ar = []
try
{
ar.length--
}
catch (e)
{
alert(e.message)
}
alert("数组长度:"+ar.length)
</SCRIPT>
</body>
</html>在IE6下正常-----------------------------------------------------------------
Lostinet
应该是这样把:
JScript5.0(IE5.0)下
arrayInstance.length是只读的。。
JScript5.5(IE6.0)下
arrayInstance.length=arrayInstance.length-1
的时候arrayInstance.length已经是新的属性了。-----------------------------------------------------------------
emu
to Lostinet([思考太多]~[走火入魔]) :Array 的length属性不是只读的。因为Array.pop()要到javascript1.2+才开始支持,所以在IE5下面,我都只能用Array.length--来实现pop元素。-----------------------------------------------------------------
emu
呵呵,没有星星的,不许蒙emu!-----------------------------------------------------------------
xg_delayth
提一个看看大家是否注意过的bug
用showModelDialog打开一个只有一个控件的页面时(如只有<input type=text name=test value="测 试">)在输入框中回车有什么结果。
在IE5.5和IE6.0中有-----------------------------------------------------------------
bcboy
这么多高手!!!
占个位,问个水问题:
有没有办法修改web ser
emu
还有几个经典问题:在网上看到一个效果不错,下回来以看是VBSCRIPT的,用JSCRIPT好象就是做不来(比如把confirm的焦点默认在取消上?),:-((在书店看到一本书也不错,看一下封底:¥×××大元,:-((在csdn发现一个网友有点意思,探究一下是GG还是JJ,却发现是个历史悬案,:-((
http://www.csdn.net/expert/topic/728/728382.xml?temp=.5561945-----------------------------------------------------------------
chenzengxi
异步调用在WebService里面应用的可能比较广泛,可以同一时间对服务器进行多次访问,从而加速数据的提取速度。
还有我发现,在例如一个目录树里做全展开操作,同步递归的效果是完成才看到显示,异步递归的效果是看到一层层显示到全部,呵呵,很有意思。还有关于字符串累加的讨论,其实是很实用的,我就有大量的这样应用:
http://www.csdn.net/expert/topic/752/752688.xml?temp=.1573297还有不知道算不算IE6的BUG一个:
http://www.csdn.net/expert/topic/724/724539.xml?temp=6.451052E-02-----------------------------------------------------------------
chenzengxi
HTA(HTML Applications),是个挺好的东西,HTML应用程序,不过我发现限制蛮多的,还要有IE的支持才能运行.
http://msdn.microsoft.com/library/default.asp?url=/workshop/author/hta/reference/objects/hta.asp
不知道那有详细的中文资料呀?-----------------------------------------------------------------
Lostinet
>>>>在网上看到一个效果不错,下回来以看是VBSCRIPT的,用JSCRIPT好象就是做不来(比如把confirm的焦点默认在取消上?),:-((那个是VBS提供的内置函数,起源于VB。
JScript是没有提供这个的。>>>>>还有我发现,在例如一个目录树里做全展开操作,同步递归的效果是完成才看到显示,异步递归的效果是看到一层层显示到全部,呵呵,很有意思。异步问题如果是简单的还好,例如,整个过程都只是一个完整的程序进行,没有任何打扰。
但是经常遇到的问题是,过程到了一般,可能要求返回,或者取消,或者要求把整个对象系都要删除。
(例如展开了一个菜单。但是用户由立刻把它关闭。)
处理这些突法事件很麻烦。对象必须能够自主地完成这些取消的工作。
不同的异步模块还要定一个协议,说明现在是否能取消,情况怎样等等。
这在DHTML下却是很麻烦的事情。-----------------------------------------------------------------
Lostinet
HTA(HTML Applications),没有什么好说明的。
你只需要知道,它的权限很大就够了。
在HTA,可以访问任何域名下的资源,和本地资源。
--------------
MICROSOFT。NET的更新程序也是用HTA来做框架的。-----------------------------------------------------------------
Lostinet
对于前面的更正
parseInt(elementA.currentStyle.isVisited)?"yes":"no"-----------------------------------------------------------------
chenzengxi
to Lostinet
你说的问题,还确实是个问题,那是最严谨的做法,虽然操作者可能永远都不会这样操作,谢谢你提醒。-----------------------------------------------------------------
chenzengxi
Lostinet兄能不能写个HTA对Access的增删改的例子。-----------------------------------------------------------------
chenzengxi
我另开一个贴子吧,呵呵。-----------------------------------------------------------------
emu
早该如此了,我这个帖子早已跑题了。-----------------------------------------------------------------
Lostinet
讨论无边界嘛。何必拘谨于形式呢。。
:)-----------------------------------------------------------------
Lostinet
讨论无边界嘛。何必拘谨于形式呢。。
:)-----------------------------------------------------------------
emu
我的本意一方面是想让后来者知道他们有哪些坎要过,一方面想从高手那里知道自己还有那些坎要过。跑题了就达不到原来的目的了。-----------------------------------------------------------------
qiushuiwuhen
跑得好,最好永不结贴,永远跑下去,让大家都来关注和收藏....地球是圆的,只要有恒心,南辕北辙都行-----------------------------------------------------------------
linhaibo
写 HTC 吧...
模仿 Delphi 里面的控件.
HTC思路很好,速度却不能叫人满意(可能是我的写法问题). :(-----------------------------------------------------------------
linhaibo
浏览器和应用程序的交互也是个问题.
类似QQ聊天室的操作就是比较成功的例子他们把捕获浏览器的页面跳转事件带来的参数 传递给 应用程序.
应用程序通过 IE 控件可以再直接修改网页内容.我想,应用程序向“半Web页”方面转换也是个趋势
固定部分用应用程序完成,其他的都可以用 网页来实现。-----------------------------------------------------------------
emu
这算哈希表吗?<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body><SCRIPT LANGUAGE="JavaScript">
<!--
var ar = new Array();
ar["abc"] = "123";
ar["def"] = "456";
alert(ar["abc"]);
alert(ar["def"]);
//-->
</SCRIPT></body>
</html>在秋水发给我的东西里面发现的用法。如果是哈希表,怎么遍历它呢?-----------------------------------------------------------------
emu
哦,这么遍历:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body><SCRIPT LANGUAGE="JavaScript">
<!--
var ar = new Array();
ar["abc"] = "123";
ar["def"] = "456";for (a in ar)
alert(a+":"+ar[a])
//-->
</SCRIPT></body>
</html>今天又学到一招,谢谢秋水。-----------------------------------------------------------------
emu
每个程序员都要过这几道关口:程序写好了,忘存就把窗口关了,更该死的是还按了确定!程序保存了,但是不小心删了,更该死的是顺手清了回收站(有些初学者不知从哪学来的坏习惯,还有用惯了苹果电脑的家伙们也是)程序保存了,没有不小心删了,只是从vss上get了一个旧的lastestVersion吧它replace了(唉,我昨晚干的好事就是)。没有进行任何误操作,只是硬盘忽然就罢工了,拿去维修时还被告知无法恢复数据(我打赌十有八九是IBM的,这两年的IBM硬盘听说都是国产的,据说产地就是深圳,不但爱罢工,而且压根恢复不了数据,现在已排为最低性价比硬盘了,使用IBM硬盘的诸位赶快刻光盘罢)硬盘没坏,只是机器忽然掉电了,scandisk(chkdsk?fsck?)时报了点儿错(天,早说了不要用FAT和EXT2了)。什么坏事也没干,系统崩溃了。-----------------------------------------------------------------
emu
新问题:计算误差问题,我今天碰上了。看看秋水写的例子:<script>
for(s=2;s<=10;s++){
var c=0;
for(n=1;n<100;n++)
for(p=1;p<=100000;p*=s){
t=n/(n/p)
if(p!=t)document.write((++c)+"."+n+"/"+p+"="+t+"<br>")
}
document.write(s+" is over:"+c+"<br>")
}
</script>-----------------------------------------------------------------
Lostinet
计算误差是语言问题,,-----------------------------------------------------------------
emu
http://www.csdn.net/expert/topic/789/789880.xml?temp=.7990534-----------------------------------------------------------------
emu
关于树图的补充:孟版主的xml树图现在可以下载了,挺有意思的,大家来看呐:http://lucky.myrice.com/temp/XML.zip
或
http://colorweb.go.163.com/temp/XML.zip
或
http://go2.163.com/stonelf/tools/deeptree1.zip-----------------------------------------------------------------
emu
新发现:IE5的数组越界bug:
<html>
<body>
<SCRIPT>
ar = []
try
{
ar.length--
}
catch (e)
{
alert(e.message)
}
alert("数组长度:"+ar.length)
</SCRIPT>
</body>
</html>在IE6下正常-----------------------------------------------------------------
Lostinet
应该是这样把:
JScript5.0(IE5.0)下
arrayInstance.length是只读的。。
JScript5.5(IE6.0)下
arrayInstance.length=arrayInstance.length-1
的时候arrayInstance.length已经是新的属性了。-----------------------------------------------------------------
emu
to Lostinet([思考太多]~[走火入魔]) :Array 的length属性不是只读的。因为Array.pop()要到javascript1.2+才开始支持,所以在IE5下面,我都只能用Array.length--来实现pop元素。-----------------------------------------------------------------
emu
呵呵,没有星星的,不许蒙emu!-----------------------------------------------------------------
xg_delayth
提一个看看大家是否注意过的bug
用showModelDialog打开一个只有一个控件的页面时(如只有<input type=text name=test value="测 试">)在输入框中回车有什么结果。
在IE5.5和IE6.0中有-----------------------------------------------------------------
bcboy
这么多高手!!!
占个位,问个水问题:
有没有办法修改web ser
nature123
对不起高手们问个问题第一个帖子中的“ 把select框放到别的元素后边,这是不行的,只能隐藏它”这句什么意思-----------------------------------------------------------------
emu
我们在网页上面可以把元素一个个的堆砌上去,也可以用table来把它们框在指定的位置,还可以通过style对象进行绝对定位,把元素想放哪就放哪:
<html>
<body>
<span style="position:absolute;top:100;left:100"><input value="aaaaaaaaaaaaaaa"></span>
<span style="position:absolute;top:200;left:150"><input value="bbbbbbbbbbb"></span>
</body>
</html>
这个特性有时也可以用来移动元素:
<html>
<body>
<span style="position:absolute;top:100;left:100" id=span1><input value="aaaaaaaaaaaaaaa"></span>
<span style="position:absolute;top:200;left:80" id=span2><input value="bbbbbbbbbbbbbbb"></span>
</body>
<SCRIPT LANGUAGE="JavaScript">
<!--
setInterval("move()",30)
var direction = 10;
function move()
{
var t = parseInt(span1.style.top);
if (t>300) direction = -10;
if (t<100) direction = 10;
span1.style.top =(t+direction)
}
//-->
</SCRIPT>
</html>
但是在随意定位或者移动的时候它们有可能就会重叠到。这个时候我们可能就需要定义谁在谁的上面。一般我们可以通过style对象的zIndex属性来舍得谁在前面(整数值,值越大的越靠前):
<html>
<body>
<span style="position:absolute;top:100;left:100" id=span1><input value="aaaaaaaaaaaaaaa"></span>
<span style="position:absolute;top:200;left:80" id=span2><input value="bbbbbbbbbbbbbbb"></span>
</body>
<SCRIPT LANGUAGE="JavaScript">
<!--
setInterval("move()",30)
var direction = 3;
function move()
{
var t = parseInt(span1.style.top);
if (t>300) direction = -3;
if (t<100) direction = 3;
span1.style.top =(t+direction) ;//移动元素
span1.style.zIndex = direction ;//设定它的层
}
//-->
</SCRIPT>
</html>但是select元素毕竟古怪,它不肯躲在别人背后的:
<html>
<body>
<span style="position:absolute;top:100;left:100" id=span1><input value="aaaaaaaaaaaaaaa"></span>
<span style="position:absolute;top:200;left:80" id=span2><select><option>bbbbbbbbbbbbb</option></select></span>
</body>
<SCRIPT LANGUAGE="JavaScript">
<!--
setInterval("move()",30)
var direction = 3;
function move()
{
var t = parseInt(span1.style.top);
if (t>300) direction = -3;
if (t<100) direction = 3;
span1.style.top =(t+direction) ;//移动元素
span1.style.zIndex = direction ;//设定它的层
}
//-->
</SCRIPT>
</html>这就是我在前面说的意思了。当然也不是绝对不行,听说有一些网站上可以做到的。它们经常让广告窗口从select上面越过。我还没时间去分析出来它的原理。以前我们一般是把它隐藏起来,在原位置显示一个input的。<html>
<body>
<span style="position:absolute;top:200;left:80" id=span2 onmouseover="this.firstChild.style.display='block' ; this.children[1].style.display='none' " onmouseout="this.firstChild.style.display='none' ; this.children[1].style.display='block' ">
<select style="display:none"><option>bbbbbbbbbbbbb</option></select>
<input value="bbbbbbbbbbbbbbbb" size=15>
</span>
<span style="position:absolute;top:100;left:100" id=span1><input value="aaaaaaaaaaaaaaa"></span>
</body>
<SCRIPT LANGUAGE="JavaScript">
<!--
setInterval("move()",30)
var direction = 3;
function move()
{
var t = parseInt(span1.style.top);
if (t>300) direction = -3;
if (t<100) direction = 3;
span1.style.top =(t+direction) ;//移动元素
}
//-->
</SCRIPT>
</html>-----------------------------------------------------------------------
nature123
一说我明白了,我常遇到的select的预先级是很高,它都可以跃出页面:)
有时是不方便,但有时这个特性还很有用,比如下边是个大activex,别的菜单都盖不住它,可select可以:)-----------------------------------------------------------------------
chenzengxi
呵呵,昨天发现的一个css小问题,搞了我半天,今天才知道怎么回事。
如果css是存在一个文件里的,当里面用相对路径时,应该用的是相对于这个css文件的路径,和调用它的文件无关,比如:-- css.css (css/css.css) --
background-image:url(../images/buttonbg.gif);我昨天犯的就是:
background-image:url(images/buttonbg.gif);
因为调用它的文件(index.htm)在根目录,图片在images里,搞了半天就是没效果,今天睡醒了,加了两个../就好了,呵呵.
为了处理上面的帖子,刚刚又写了一个js小程序来替换特殊字符(大于号、小于号、回车、制表符),也许对别人也有用。function String.prototype.change()
{
var str = this;
while (str.indexOf("<") >= 0)
str = str.replace("<","<");
while (str.indexOf(">") >= 0)
str = str.replace(">",">");
while (str.indexOf("\n") >= 0)
str = str.replace("\n","<br>");
while (str.indexOf(" ") >= 0)
str = str.replace(" "," ");
while (str.indexOf("\t") >= 0)
str = str.replace("\t"," ");
return (str);
}
用法:document.write("<script>alert()</script>".change())上面的帖子就是这么处理出来的。
function String.prototype.trim(){return this.replace(/(^\s*)|(\s*$)/g, "");}这是javascript板的trim()函数,去除前后空格。用法也直接:
alert(" abc ".trim());
不用while还能用什么呢?
这段代码其实不是100%原创的,框架是从csdn的xsl里面抄来的。(http://www.csdn.net/expert/Xsl/2.xsl),这个网页用的就是这个xsl不信你查一下网页源码第二行。我只是添加了对“<”和“>”的判断而已。今晚还帮人做了一个字符串逻辑运算的javascript,要实际拿来加密解密还不行,不过有了这个框架,下面的就容易了。所以也把连接贴在这里:http://www.csdn.net/expert/topic/811/811070.xml?temp=.283291
<head>
<STYLE>
v\:* { BEHAVIOR: url(#default#VML) }
</STYLE>
<title>emu</title>
<SCRIPT LANGUAGE="JavaScript">
<!--
function drawpie(src)
{
var ar = new Array(src.length);
var sum=0;
for (var i=0;i<src.length;i++)
sum += src[i][1];
var maxScale = 360<<16
for (var i=0;i<src.length;i++)
ar[i]=src[i][1]/sum;
var coordsize = 400;
var halfcoordsize = 200;
var colors = ["#FF0000","#3366FF","#33CC33","#990000","#9966FF","#FF33CC","#006666"]
var result = "<center><v:group style='width:300px;height:300px;top:0' CoordSize='"+coordsize+","+coordsize+"'>\n"
var sum=0;
for (var i=0;i<ar.length;i++)
{
var st = "m"+halfcoordsize+","+halfcoordsize+" ae"+ halfcoordsize+","+ halfcoordsize+","+halfcoordsize+","+halfcoordsize+","+parseInt(sum*maxScale)+","+parseInt( ar[i] * maxScale)+ "xe"; st= "<v:shape fillcolor='"+colors[i]+"' coordsize='"+coordsize+","+coordsize+"' style='width:"+coordsize+"px;height:"+coordsize+"px; position=absolute' path='"+st+"' Title='"+src[i][0]+":"+src[i][1]+"'/>";
sum += ar[i];
result +=st }
//画图例
for (var i=0;i<ar.length;i++)
{
result += "<v:rect style='Z-INDEX:0;top:"+(i*35)+";left:" +(coordsize+50)+";width:30;height:30;position:absolute' strokecolor='white' fillcolor='"+colors[i]+"'></v:rect>"
result += "<v:rect style='Z-INDEX:0;top:"+(i*35+5)+";left:" +(coordsize+80)+";width:"+(src[i][0].length*10)+";height:90;position:absolute' strokecolor='white'>"
result += "<v:TextBox inset='0,0,0,0' style='font-size:10.2pt;'>"+src[i][0]+"</v:TextBox></v:rect>"
}
result +="</v:group></center>";
return result;
}
function tbody2array(t)
{
var elm=t.children;
var result = new Array()
for (var i=0;i<elm.length;i++)
{
var tmp = new Array();
tmp[0]=elm[i].children[0].innerText
tmp[1]=parseInt(elm[i].children[1].innerText)
result [result.length]=tmp;
}
return (result);
}
function buildPie(t)
{
div1.innerHTML = drawpie(tbody2array(t))
}//-->
</SCRIPT>
</head>
<body>
<TABLE>
<tr>
<td colspan=3>
看看javascript版上的分都落在哪些家伙的手里
</td>
</tr>
<tr>
<td>
<table>
<thead><tr><td colspan=2><input type=radio name=radios onclick="buildPie(tbody1)"></td></tr></thead>
<tbody id=tbody1 style="font-size:14">
<TR>
<TD>qiushuiwuhen</TD>
<TD>3330</TD>
</TR>
<TR>
<TD>net_lover</TD>
<TD>2339</TD>
</TR>
<TR>
<TD>seabell</TD>
<TD>1544</TD>
</TR>
<TR>
<TD>chenzengxi</TD>
<TD>1075</TD>
</TR>
</tbody>
</table>
</td>
<td>
<table>
<thead><tr><td colspan=2><input type=radio name=radios onclick="buildPie(tbody2)"></td></tr></thead>
<tbody id=tbody2 style="font-size:14">
<TR>
<TD>net_lover</TD>
<TD>2798</TD>
</TR>
<TR>
<TD>weidegong</TD>
<TD>1424</TD>
</TR>
<TR>
<TD>seabell</TD>
<TD>1265</TD>
</TR>
<TR>
<TD>qiushuiwuhen</TD>
<TD>3769</TD>
</TR>
</tbody>
</table>
</td>
<td>
<table>
<thead><tr><td colspan=2><input type=radio name=radios onclick="buildPie(tbody3)"></td></tr></thead>
<tbody id=tbody3 style="font-size:14">
<TR>
<TD>weidegong</TD>
<TD>1424</TD>
</TR>
<TR>
<TD>seabell</TD>
<TD>1265</TD>
</TR>
<TR>
<TD>qiushuiwuhen</TD>
<TD>3769</TD>
</TR>
<TR>
<TD>net_lover</TD>
<TD>2798</TD>
</TR>
</tbody>
</table>
</td>
</tr>
<tr>
<td colspan=3 height=300>
<div id=div1>
</div>
</td>
</tr>
</TABLE>
</body>
</html>
注意,drawpie函数可以直接分离出来,放到一个js文件里面的。只要给它一个二维数组(n*2),它就乖乖的输出来一段html代码。插入一个div里面或者write到document上面就可以了。写这个程序的时候顺便解决了linhaibo教程里面关于ae的一个疑问。原来要吧角度左移16位或者乘以65536才对啊。
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title></title>
</head>
<body>
<div id=ttText style="display:none">
程序运行中......<BR>
<span id=currentState></span> <button onclick="CANCLE = true;">停止</button><BR>
</div>
<button onclick="run_step1()" id=button1>开始</button>
<span id=result></span>
<script>
var i=0;
var sum =0;
var CANCLE = false;
var max = 1000000; //循环的终点
var step = 9999; //步长:选择合适的步长可以在响应能力和计算速度上获得比较好的折衷。
//(步长用9999而不是10000只是为了显示的时候好看,其实都一样)
var timeStart = "";
function run_step1()
{
if (i == 0)timeStart = new Date();
ttText.style.display="";
button1.style.display="none";
setTimeout("run_step2()",1);
CANCLE = false;
}
function run_step2()
{
if (CANCLE)
{
ttText.style.display="none";
button1.style.display="";
button1.value="继续";
return;
}
if (i == null)
{
//初始化
//注意:这里不能写var,因为循环变量和结果都为全局变量。
i = 1;
sum = 0;
run_step2();
}
else if (i<=max)
{
var endValue = i+step;
if (endValue >max) endValue = max+1;
for (j=i; j<endValue ; j++)
sum += j;
i+=step;
currentState.innerText = i;
result.innerText = "临时结果:"+sum;
setTimeout("run_step2()",0);
}
else
{
run_step3();
}
}
function run_step3()
{
ttText.style.display="none";
button1.style.display="";
button1.value="重新开始";
result.innerText = "最终结果"+sum+" 用时:"+(new Date-timeStart)/1000+"秒"
sum = 0;
i = 0;
}
</script>
</body>
</html>
http://lostinet.d2g.com/lostinet-Publish/JScriptSoapClient/eg2.htm
http://lostinet.dns2go.com/sarc/chat.asp
setTimeout("run_step2()",0);
应改为:
setTimeout("run_step2()",20);
不然在一些低配置的机器上占用过多cpu资源可能造成系统不稳定。
xh.open("GET",url,true,username,password);
对吧?我手头没有资料可以查,中间的true是 xh.async=true 的意思吗?
<body>
<SCRIPT>
function String.prototype.xor(str) //异或操作,也就是通用的对称加密、解密操作
{
var result="",l=Math.min(str.length,this.length);
for (var i=0;i<l;i++)result+=String.fromCharCode(this.charCodeAt(i)^str.charCodeAt(i));
return result;
}var key = "我爱北京天安门"; // 这里是密钥,当真做的时候当然不能直接写在网页上var encoded = "%u09C5%u2E25%uD8F2%u25D7%u3F06%u0863%uE6C2 " //密文alert( unescape(encoded).xor(key) ) </SCRIPT>
</body>
</html>
=(b^(a|b))+(a&b)
=(b-(a&b))^(a|b)
=(b^(a|b))+(a&b)
=(b-(a&b))^(a|b)
这个树纯粹的100%的就是微软msdn站点的树
我看了源代码, 连deeptree.css和<div id="deeptree" class="deeptree" CfgXMLSrc="deeptreeconfig.xml">都未改
并不是版主写的,对吧大家可以看看msdn.microsoft.com的树菜单里面使用了xslt转换xml
就像没有java基础的并不是真正的jsp高手
就像写C的高手同样需要掌握数据结构和操作系统虽然一样能编出程序来,但底层东西呢?
充其量只能算使用工具的高手罢了2.斑竹并不是神话,只是善于积累和归纳罢了,
最主要的是要看是否能用平常心去乐于助人
就像这次世界杯的传统强队,一样可以被击溃的
因为世界在进步,你不奋勇向前就只能急流勇退
就像没有java基础的并不是真正的jsp高手
就像写C的高手同样需要掌握数据结构和操作系统虽然一样能编出程序来,但底层东西呢?
充其量只能算使用工具的高手罢了2.斑竹并不是神话,只是善于积累和归纳罢了,
最主要的是要看是否能用平常心去乐于助人
就像这次世界杯的传统强队,一样可以被击溃的
因为世界在进步,你不奋勇向前就只能急流勇退
<head>
<title>Cool</title>
<!-- VML include -->
<style>
<!--
v\:* {
behavior: url(#default#VML);
}
-->
</style>
<!-- end VML include --><style type="text/css">
<!--
body {margin: 0px; font-family: verdana; font-size: 12px; overflow: hidden;}
-->
</style>
</head>
<body >
<table>
<tr>
<td></td>
<td></td>
<td></td>
<td>
<v:group id="clock" coordsize="100 100" style="position: relative;">
<v:oval style="width: 100%; height: 100%">
<v:stroke weight="10px" color="#eeeeee"/>
<!-- I removed this gradient fill to match the WebFX color theme
<v:fill type="gradient" color="white" color2="#eeeeff" angle="225deg"/>
-->
</v:oval> <v:group id="secondsPointer" style="width: 100%; height: 100%; position: absolute; top: 0px; left: 0px;">
<v:line from="50,50" to="50,5">
<v:stroke weight="2px" endcap="round" color="navy"/>
</v:line>
</v:group> <v:group id="minutesPointer" style="width: 100%; height: 100%; position: absolute; top: 0px; left: 0px;">
<v:line from="50,50" to="50,8">
<v:stroke weight="4px" endcap="round" color="navy"/>
</v:line>
</v:group> <v:group id="hoursPointer" style="width: 100%; height: 100%; position: absolute; top: 0px; left: 0px;">
<v:line from="50,50" to="50,18">
<v:stroke weight="7px" endcap="round" color="navy"/>
</v:line>
</v:group></v:group>
</td>
</tr>
</table><script type="text/javascript">
<!--
function updatePointers() {
var now = new Date();
secondsPointer.style.rotation = now.getSeconds() * 6;
minutesPointer.style.rotation = now.getMinutes() * 6 + now.getSeconds() / 10;
hoursPointer.style.rotation = now.getHours() * 30 + now.getMinutes() / 2;
}window.attachEvent("onload", initVMLClock);
window.attachEvent("onresize", resizeObjects);function initVMLClock() {
resizeObjects();
updatePointers();
window.setInterval("updatePointers()", 1000);
}function resizeObjects() {
var size = Math.min(document.body.offsetWidth, document.body.clientHeight);
clock.style.pixelWidth = size - 2*(size * 0.045);
clock.style.pixelHeight = size - 2*(size * 0.045);
clock.style.left = size * 0.04 + (document.body.clientWidth - size) / 2;
clock.style.top = size * 0.04 + (document.body.clientHeight - size) / 2;
clock.childNodes.item(0).childNodes.item(0).weight = size * 0.01; secondsPointer.childNodes.item(0).childNodes.item(0).weight = size * 0.001;
minutesPointer.childNodes.item(0).childNodes.item(0).weight = size * 0.002;
hoursPointer.childNodes.item(0).childNodes.item(0).weight = size * 0.004;
}function toggle(sId) {
var el = document.getElementById(sId);
el.style.display = (el.style.display == "none") ? "block" : "none";
}//-->
</script></body>
</HTML>
//-----------------------------------------------
// Copyright ?2001 Microsoft Corporation
//
// Author(s): Grant Harris
// Bryn Waibel
//
//-----------------------------------------------
秋水的话把我吓出一身冷汗。我是不懂c的,从来就抗拒。印象中写过的c程序大概有10个左右,都是为了交作业。感觉上javascript更接近于java。小李飞猪的时钟是不是从http://www.csdn.net/expert/topic/815/815340.xml?temp=.5294763 上贴过来的?呵呵。
我只学过asp和jsp。
高手们都来帮帮我怎么学C?
国内很多的dhtml,js站点内容都很浅,建议大家多到国外看看,不要怕英文,多多学习
<SCRIPT language=JavaScript>fCol='FFFFFF';//face colour.dCol='FF5959';//dot colour.hCol='D8D8D8';//hours colour.mCol='D8D8D8';//minutes colour.sCol='FF5959';//seconds colour.ClockHeight=40;ClockWidth=40;ClockFromMouseY=80;ClockFromMouseX=0;//Alter nothing below! Alignments will be lost!ns=(document.layers);ie=(document.all);h=3;m=4;s=5;face='Y O U T H Y E A R .C O M';face=face.split(' ');n=face.length;speed=0.5;ymouse=0;xmouse=0;scrll=0;p="<font face=Arial size=1 color="+fCol+">";e=360/n;HandHeight=ClockHeight/5;HandWidth=ClockWidth/5;HandY=0;HandX=0;scrll=0;y=new Array();x=new Array();Y=new Array();X=new Array();for (i=0; i < 37; i++){y[i]=0;x[i]=0;Y[i]=0;X[i]=0}Dy=new Array();Dx=new Array();DY=new Array();DX=new Array();for (i=0; i < n; i++){Dy[i]=0;Dx[i]=0;DY[i]=0;DX[i]=0}if (ns){for (i=0; i < n; i++)document.write('<layer name="nsN'+i+'" top=0 left=0 height=15 width=15><center>'+p+face[i]+'</font></center></layer>');for (i=0; i < n; i++)document.write('<layer name="nsD'+i+'" top=0 left=0 bgcolor='+dCol+' clip="0,0,2,2"></layer>');for (i=0; i < h; i++)document.write('<layer name=nsH'+i+' top=0 left=0 bgcolor='+hCol+' clip="0,0,2,2"></layer>');for (i=0; i < m; i++)document.write('<layer name=nsM'+i+' top=0 left=0 bgcolor='+mCol+' clip="0,0,2,2"></layer>');for (i=0; i < s; i++)document.write('<layer name=nsS'+i+' top=0 left=0 bgcolor='+sCol+' clip="0,0,2,2"></layer>');}if (ie){document.write('<div id="On" style="position:absolute;top:0px;left:0px"><div style="position:relative">');for (i=0; i < n; i++)document.write('<div id="ieN" style="position:absolute;width:15px;height:15px;text-align:center">'+p+face[i]+'</font></div>');document.write('</div></div>');document.write('<div id="Od" style="position:absolute;top:0px;left:0px"><div style="position:relative">');for (i=0; i < n; i++)document.write('<div id="ieD" style="position:absolute;height:2px;width:2px;font-size:2px;background:'+dCol+'"></div>');document.write('</div></div>');document.write('<div id="Oh" style="position:absolute;top:0px;left:0px"><div style="position:relative">');for (i=0; i < h; i++)document.write('<div id="ieH" style="position:absolute;width:2px;height:2px;font-size:2px;background:'+hCol+'"></div>');document.write('</div></div>');document.write('<div id="Om" style="position:absolute;top:0px;left:0px"><div style="position:relative">');for (i=0; i < m; i++)document.write('<div id="ieM" style="position:absolute;width:2px;height:2px;font-size:2px;background:'+mCol+'"></div>');document.write('</div></div>')document.write('<div id="Os" style="position:absolute;top:0px;left:0px"><div style="position:relative">');for (i=0; i < s; i++)document.write('<div id="ieS" style="position:absolute;width:2px;height:2px;font-size:2px;background:'+sCol+'"></div>');document.write('</div></div>')}(ns)?window.captureEvents(Event.MOUSEMOVE):0;function Mouse(evnt){ymouse = (ns)?evnt.pageY+ClockFromMouseY-(window.pageYOffset):event.y+ClockFromMouseY;xmouse = (ns)?evnt.pageX+ClockFromMouseX:event.x+ClockFromMouseX;}(ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse;function ClockAndAssign(){time = new Date ();secs = time.getSeconds();sec = -1.57 + Math.PI * secs/30;mins = time.getMinutes();min = -1.57 + Math.PI * mins/30;hr = time.getHours();hrs = -1.575 + Math.PI * hr/6+Math.PI*parseInt(time.getMinutes())/360;if (ie){On.style.top=window.document.body.scrollTop;Od.style.top=window.document.body.scrollTop;Oh.style.top=window.document.body.scrollTop;Om.style.top=window.document.body.scrollTop;Os.style.top=window.document.body.scrollTop;}for (i=0; i < s; i++){ var sd=(ns)?document.layers['nsS'+i]:ieS[i].style; sd.top=y[8+i]+HandY+(i*HandHeight)*Math.sin(sec)+scrll; sd.left=x[8+i]+HandX+(i*HandWidth)*Math.cos(sec);}for (i=0; i < m; i++){ var md=(ns)?document.layers['nsM'+i]:ieM[i].style; md.top=y[4+i]+HandY+(i*HandHeight)*Math.sin(min)+scrll; md.left=x[4+i]+HandX+(i*HandWidth)*Math.cos(min);}for (i=0; i < h; i++){ var hd=(ns)?document.layers['nsH'+i]:ieH[i].style; hd.top=y[1+i]+HandY+(i*HandHeight)*Math.sin(hrs)+scrll; hd.left=x[1+i]+HandX+(i*HandWidth)*Math.cos(hrs);}for (i=0; i < n; i++){ var D=(ns)?document.layers['nsD'+i]:ieD[i].style; D.top=y[13+i] + ClockHeight*Math.sin(-1.0471 + i*e*Math.PI/180)+scrll; D.left=x[13+i] + ClockWidth*Math.cos(-1.0471 + i*e*Math.PI/180);}for (i=0; i < n; i++){ var N=(ns)?document.layers['nsN'+i]:ieN[i].style; N.top=y[25+i]-6 + ClockHeight*1.4*Math.sin(-1.0471 + i*e*Math.PI/180)+scrll; N.left=x[25+i]-6 + ClockWidth*1.4*Math.cos(-1.0471 + i*e*Math.PI/180);}}function Delay(){scrll=(ns)?window.pageYOffset:0;y[0]=Math.round(Y[0]+=((ymouse)-Y[0])*speed);x[0]=Math.round(X[0]+=((xmouse)-X[0])*speed);for (i=1; i < 37; i++){y[i]=Math.round(Y[i]+=(y[i-1]-Y[i])*speed);x[i]=Math.round(X[i]+=(x[i-1]-X[i])*speed);}ClockAndAssign();setTimeout('Delay()',20);}if (ns||ie)window.onload=Delay;
放心,不会有事的,你会被从宽处理的。
顺便感叹一下:好多高手呀!!!!!,还好我的三角也不少(555555,我什么时候才能有个★呢,苦苦挣扎中)
坐标定位前两天刚有个不错的帖子啊,你去找找。