JAVA网站制作之JavaScript猎取事务对象
Java的桌面程序开发在java程序员里通常叫swing开发,主要用的swing包里的类开发的,也就是通常说的c/s架构开发平常我们猎取事务对象一样平常写法以下:functiongetEvent(event){returnevent||window.event//IE:window.event}假如没有参数,也可写成(非IE:事务对象会主动传送给对应的事务处置函数,且为第一个参数):functiongetEvent(){
returnargumentswindow.event//IE:window.event
}
如许的写法在除Firefox(测试版本:3.0.12,下同)外的扫瞄器上运转都不会有成绩,但Firefox为何破例呢?让我们如许一种情况:
<buttonid="btn"onclick="foo()">按钮</button>
<script>
functionfoo(){
vare=getEvent();
alert(e);}
</script>
运转了局在Firefox中是undefined,为何呢?
在Firefox中挪用实际上是如许的,先挪用实行的是:
functiononclick(event){
foo();
}
然后挪用实行的是:
functionfoo(){
vare=getEvent();
alert(e);
}
会发明在Firefox下onclick="foo()"中的foo()没法主动传进事务对象参数,而默许传送给了体系天生的onclick函数,那本例我们能够经由过程getEvent.caller.caller.arguments取得事务对象。
因而,我们的getEvent能够优化成(参照yui_2.7.0b中的event/event-debug.js中getEvent办法):
functiongetEvent(event){
varev=eventwindow.event;
if(!ev){
varc=this.getEvent.caller;
while(c){
ev=c.arguments;
if(ev&&(Event==ev.constructorMouseEvent==ev.constructor)){/怿飞注:YUI源码BUG,ev.constructor也多是MouseEvent,纷歧定是Event
break;
}
c=c.caller;
}
}
returnev;
}
固然另有一个很复杂的办理办法,就是手动将参数传送给onclick="foo()":
<buttonid="btn"onclick="foo(event)">按钮</button>
专门做了这个例子;而java的这个例子好像就是为了教学而写的,很多教学目的的例子是不考虑优化、性能的。 另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。 如果要向java web方向发展也要吧看看《Java web从入门到精通》学完再到《Struts2.0入门到精通》这样你差不多就把代码给学完了。有兴趣可以看一些设计模块和框架的包等等。 接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。 关于设计模式的资料,还是向大家推荐banq的网站 http://www.jdon.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。 是一种突破用户端机器环境和CPU Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading) 是一种为 Internet发展的计算机语言
页:
[1]