由浅到深了解JavaScript类(转贴)
from 51js
最近在无忧脚本混了一阵子,回复了一些贴子,自己却没有做出什么东东让大家看看,心里有些不安,于是写了下边的一点东西,本来应该发在类封装区的,考虑到那里比较冷,而这篇文章我希望能够帮助到更多的朋友,因此放到这里来了。

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
类是什么?

许多刚接触编程的朋友都可能理解不了类,其实类是对我们这个现实世界的模拟,把它说成“类别”或者“类型”可能会更容易理解一些。比如“人”这种动物就是一个类,而具体某一个人就是“人”这个类的一个实例,“人”可以有许多实例(地球人超过六十亿了),但“人”这个类只有一个。你或许会说那男人和女人不也是人么?怎么只能有一个?其实这里要谈到一个继承的东西,后边才讲,请继续看下去。

如何建立一个类?
在C++中是以class来声明一个类的,JavaScript与C++不同,它使用了与函数一样的function来声明,这就让许多学Jscript的朋友把类与函数混在一起了,在Jscript中函数与类确实有些混,但使用久了自然而然会理解,这篇文章是针对想进攻面向对象编程的朋友而写,就不打算一下子讨论得太深了。
请看下边这个类的定义:

function WuYouUser()
{
this.Name; //名字
}
GMAIL js
Posted in JavaScript on 2006/12/05 / 评论(0) »
研究
<script type="text/javascript"><!--
function Now() {
 return (new Date()).getTime();
}
function SetClass(id, c) {
 document.getElementById(id).className = c;
}
var ok = 1;
var rpts = 0;
var start = Now();
var last = start;
function Update(v) {
 if (v != ok) {
   SetClass('m', v ? 'h' : '');
   ok = v;
   if (!ok) {
     new Image().src = "?view=lr&seq=" + (++rpts) + "&random=" + Now();
   }
 }
}
var t;
var dur = 30000;
var lastPct = 0;
var ravg = 0;
function Progress(pct, next) {
 Update(1);
 var cur = Now();
 var pctL = pct - lastPct;
 var timeL = cur - last + 1;
 var r = (pctL / timeL);
 ravg = (pct / (cur - start + 1));
 if (pct) {
   dur = 2 * (next - pct) / (0.5 * ravg + 0.5 * r);
   dur = Math.min(30000, Math.max(10000, dur));
 }
 window.clearTimeout(t);
 t = window.setTimeout("Update(0)", dur);
 last = cur;
 lastPct = pct;
}
function LoadDone() {
 window.clearTimeout(t);
 t = window.setTimeout("Update(0)", 30000);  
}
function SendJS(url) {
 var xhr;
 try {
   xhr = new XMLHttpRequest();
 } catch (e) {
   var a = ['MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0',
     'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'MICROSOFT.XMLHTTP.1.0',
     'MICROSOFT.XMLHTTP.1', 'MICROSOFT.XMLHTTP'];
   for (var i = 0; i < a.length; i++) {
     try {
       xhr = new ActiveXObject(a[i]);
       break;
     } catch (e) {
     }
   }
 }
 if (xhr) {
   xhr.open("POST", url, true);
   xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
   var data = '&js=' + encodeURIComponent(top.js.document.body.innerHTML);
   xhr.send(data);
 }
}
Progress(0, 1);
-->
</script>
[JS]小技巧
Posted in JavaScript on 2006/11/30 / 评论(0) »
首先打开有图片的网页,完全打开后,在地址栏输入


javascript:Ai7Mg6P='';for%20(i7M1bQz=0;i7M1bQz<document.images.length;i7M1bQz++){Ai7Mg6P+='<img%20src='+document.images[i7M1bQz].src+'><br>'};if(Ai7Mg6P!=''){document.write('<center>'+Ai7Mg6P+'</center>');void(document.close())}else{alert('No%20images!')}
回车! 呵呵 就可以罗列出页面中的所有图片 :)

另外还有:不显示网页中图片的代码:

1个小滚动JS
Posted in JavaScript on 2006/11/30 / 评论(0) »

<SCRIPT LANGUAGE="JavaScript">
function scroll(n)
{temp=n;
Out1.scrollTop=Out1.scrollTop+temp;
if (temp==0) return;
setTimeout("scroll(temp)",80);
}
</SCRIPT>
<TABLE WIDTH="100%">
<TR>
<TD HEIGHT="92" WIDTH="573" VALIGN="TOP">
<TABLE WIDTH="330">
<TR>
<TD WIDTH="304" VALIGN="TOP" ROWSPAN="2" >
<DIV ID=Out1 STYLE="width:100%; height:100;overflow: hidden ;border-style:dashed;border-width: 1px,1px,1px,1px;">
外交部发言人:中国坚决反对陈水扁“过境”休斯敦<BR>  石广生谈亚太经合组织贸易部长会议 <BR>
国家质检总局公布近期查处的15起案值超百万元的大案要案<BR>
尼泊尔新国王下令对王宫枪击事件进行全面调查<BR>   网站专稿:美丽的西藏 真情的演绎 《文成公主》惹人爱 <BR>
网站特稿:尼泊尔王室灭门惨案——谁扣动了扳机?
<BR>
<BR>
</DIV>
</TD>
<TD WIDTH="14" VALIGN="TOP"><IMG src="/up0605.gif" WIDTH="14" HEIGHT="20" onmouseover="scroll(-1)" onmouseout="scroll(0)" onmousedown="scroll(-3)" BORDER="0" ALT="按下鼠标速度会更快!"></TD>
</TR>
<TR>
<TD WIDTH="14" VALIGN="BOTTOM"><IMG src="/down0605.gif" onmouseover="scroll(1)" onmouseout="scroll(0)"  onmousedown="scroll(3)" BORDER="0" WIDTH="15" HEIGHT="21" ALT="按下鼠标速度会更快!"></TD>
</TR>
</TABLE>
复制这段代码复制到浏览器地址栏然后回车就看的到了
javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++}setInterval('A()',5); void(0);
分页: 2/5 第一页 上页 1 2 3 4 5 下页 最后页 [ 显示模式: 摘要 | 列表 ]