??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品中文综合第一页,国产精品一区三区,国产亚洲欧美色 http://www.aygfsteel.com/alwayscy/category/18990.htmlzh-cn Tue, 04 Mar 2008 08:58:45 GMT Tue, 04 Mar 2008 08:58:45 GMT 60 DWR+JPA: DWR直接讉KSERVICE层,q直接处理DAOq回的BEAN http://www.aygfsteel.com/alwayscy/archive/2008/03/03/183379.html我爱佛_ 我爱佛_ Mon, 03 Mar 2008 12:59:00 GMT http://www.aygfsteel.com/alwayscy/archive/2008/03/03/183379.html http://www.aygfsteel.com/alwayscy/comments/183379.html http://www.aygfsteel.com/alwayscy/archive/2008/03/03/183379.html#Feedback 0 http://www.aygfsteel.com/alwayscy/comments/commentRss/183379.html http://www.aygfsteel.com/alwayscy/services/trackbacks/183379.html 阅读全文 ]]> DWR Reverse Ajax功能实践的要?/title> http://www.aygfsteel.com/alwayscy/archive/2007/11/01/157552.html我爱佛_ 我爱佛_ Thu, 01 Nov 2007 09:35:00 GMT http://www.aygfsteel.com/alwayscy/archive/2007/11/01/157552.html http://www.aygfsteel.com/alwayscy/comments/157552.html http://www.aygfsteel.com/alwayscy/archive/2007/11/01/157552.html#Feedback 1 http://www.aygfsteel.com/alwayscy/comments/commentRss/157552.html http://www.aygfsteel.com/alwayscy/services/trackbacks/157552.html 本文DWR使用中,代码l织、声明做了说明。ƈ解决了在非DWRU程中,WebContextFactory.get()q回I的问题?nbsp; 阅读全文 ]]> 最好用的JS~辑器:JSEclipse及YUT-EXT库的代码完成功能 http://www.aygfsteel.com/alwayscy/archive/2007/09/13/144971.html我爱佛_ 我爱佛_ Thu, 13 Sep 2007 13:14:00 GMT http://www.aygfsteel.com/alwayscy/archive/2007/09/13/144971.html http://www.aygfsteel.com/alwayscy/comments/144971.html http://www.aygfsteel.com/alwayscy/archive/2007/09/13/144971.html#Feedback 3 http://www.aygfsteel.com/alwayscy/comments/commentRss/144971.html http://www.aygfsteel.com/alwayscy/services/trackbacks/144971.html
在Eclipse的Software Updates/Find and Install…中点New Remote Site…填入Q?
http://download.macromedia.com/pub/labs/jseclipse/autoinstall/
安装JSEclipse完成后?
如果你用EXT库的话,再把完整的库Q?a >点这?/a>
拯到这里,注意user_library需要自己创建,另外Q是不要带解压目录,而是所有的XML文g直接拷入Q?
E:\myeclipse\workspace\.metadata\.plugins\com.interaktonline.jseclipse\user_library
]]>在dojo的TreeV3中实现动态的上下文菜单TreeContextMenuV3 http://www.aygfsteel.com/alwayscy/archive/2007/07/01/127338.html我爱佛_ 我爱佛_ Sun, 01 Jul 2007 03:15:00 GMT http://www.aygfsteel.com/alwayscy/archive/2007/07/01/127338.html http://www.aygfsteel.com/alwayscy/comments/127338.html http://www.aygfsteel.com/alwayscy/archive/2007/07/01/127338.html#Feedback 3 http://www.aygfsteel.com/alwayscy/comments/commentRss/127338.html http://www.aygfsteel.com/alwayscy/services/trackbacks/127338.html dojo提供了不错的树控Ӟ但上下文菜单比较单,不能动态改变:比如我想Ҏ不同节点昄不同的上下文菜单比较困难,Ҏ多种实验和查阅下面提供一U实现方式。在此过E中也学C东ѝ先把解x案说一下,再把发现q程说一下: DOJO提供了AOP的方式来“注入”代码Q我们就把修改menu的代码注入到TreeContextMenuV3里就可以了: 在open事g前注入我们的代码Q?br>
dojo.event.connect( " before " , dojo.widget.byId( " contextMenu1 " ), " open " , this , " onContextMenuOpen " );
注意before是表C在menu打开之前调用Q其它关键字q可以是after,around。强Q赞一? 在onContextMenuOpen函数中,做改变菜单的事情Q?br>
this .onContextMenuOpen = function (evt) { dojo.log.info ( " before context open " ); dojo.log.info (evt); var m = dojo.widget.byId( " contextMenu1 " ); dojo.log.info (m); m.removeChild (dojo.widget.byId( " treeContextMenuEdit " )); m.removeChild (dojo.widget.byId( " treeContextMenuDown " )); m.removeChild (dojo.widget.byId( " treeContextMenuCreate " )); m.removeChild (dojo.widget.byId( " treeContextMenuCreate2 " )); if ( null == this .context_menu[ " MenuItem2 " ]) { var id = dojo.widget.createWidget( " MenuItem2 " , {caption: " Page Info " } ); dojo.log.info (id); this .context_menu[ " MenuItem2 " ] = id; m.addChild(id); } // m.destroyChildren (); dojo.log.info (m); // w.destory (); } ;
在这里可以根据节Ҏ增删菜单了Qcontext_menu成员是用来记录加入过的菜单项Q以免重复加入?br>另外QremoveChild没有destory掉菜单项Q应该可以重复用。所以,我设想的实现是,在程序开头将所有可能的菜单动态创建好Q存在一个MAP中,然后Q在q里来动态加删它们?br> 下面是寻找解x法的q程Q?br> 刚开始时Q我x改变整个树的菜单Q确实也扑ֈ了可以编E改变它的方法:
var ctxMenu = dojo.widget.byId( " contextMenu " ); var tree = dojo.widget.byId( " phyTree " ); dojo.log.info (ctxMenu); ctxMenu.listenTree(tree); ctxMenu.bindDomNode(tree.domNode);
关键是一句:bindDomNode?br>q样虽然可以动?#8220;加蝲”菜单了,可是没有“时机”来加载新菜单Q无法达到根据节点变化来做改变?br> 随后Q我又想到重载,d造这?#8220;时机”Q?br>
dojo.require ( " dojo.widget.TreeContextMenuV3 " ); dojo.provide( " mywidgets.MyTreeContextMenu " ); dojo.widget.defineWidget( // widget name and class " mywidgets.MyTreeContextMenu " , // superclass [dojo.widget.TreeContextMenuV3], function () { dojo.log.info ( " my context menu create1 " ); } , // properties and methods { open: function () { var result = dojo.widget.PopupMenu2.prototype.open.apply( this , arguments); dojo.log.info ( " my context menu create " ); for ( var i = 0 ; i < this .children.length; i ++ ) { /**/ /* notify children */ if ( this .children[i].menuOpen) { this .children[i].menuOpen( this .getTreeNode()); } } return result; } } );
q也是我W一ơ重载DOJOQ发现其实很单,关键要注意它的namespaceQ?br>dojo.require()语句的寻找方法是Q?br>dojo.xxx => dojo/src/xxx.js dojo.xxx.yyy => dojo/src/xxx/yyy.js dojo.xxx.yyy.zzz => dojo/src/xxx/yyy/zzz.js 如果遇到不是dojo开头时Q它的寻找方法是Q?br>example.xxx => dojo/../example/xxx.js example.xxx.yyy => dojo/../example/xxx/yyy.js example.xxx.yyy.zzz => dojo/../example/xxx/yyy/zzz.js 所以要把自q代码攑ֈ跟dojo同可以了?br>q个办法我没往下试Q因为重载的是contextmenuQ在它里面把?#8220;整个自己”换成别的menuQ我觉得是不可行的。而看半天代码也没扄在哪重蝲右键点击q个事g。不q启发我可以更换子item来解冟?br>于是有了开头的解决Ҏ?/p>
]]> 动态修改dojo的TreeNodeV3图标 http://www.aygfsteel.com/alwayscy/archive/2007/06/02/121475.html我爱佛_ 我爱佛_ Sat, 02 Jun 2007 04:06:00 GMT http://www.aygfsteel.com/alwayscy/archive/2007/06/02/121475.html http://www.aygfsteel.com/alwayscy/comments/121475.html http://www.aygfsteel.com/alwayscy/archive/2007/06/02/121475.html#Feedback 0 http://www.aygfsteel.com/alwayscy/comments/commentRss/121475.html http://www.aygfsteel.com/alwayscy/services/trackbacks/121475.html 最q通过搜烦发现建立TreeV3时候,方便的加载图标方法:在这?/a>
但是有个问题Q想在程序里动态修改它却没有函敎ͼl过研究代码发现可以用如下简单方法实玎ͼ
取得之前定义的TreeDocIconExtension的引用:
var treeicons = dojo.widget.manager.getWidgetById("phyTreedocIcons");
改变TreeNodeV3的TYPEgؓCSS文g定义q的目Q?
node.nodeDocType = 3;
最关键是要d新iconNode的innerHTMLQ调用如下:
treeicons.setnodeDocTypeClass (node);
已经实验通过。这样就可以方便的根据后台数据刷新节点状态,而不必重建树节点?/p>
]]> ldojo的v3 tree加icon图标 http://www.aygfsteel.com/alwayscy/archive/2007/06/01/121395.html我爱佛_ 我爱佛_ Fri, 01 Jun 2007 09:37:00 GMT http://www.aygfsteel.com/alwayscy/archive/2007/06/01/121395.html http://www.aygfsteel.com/alwayscy/comments/121395.html http://www.aygfsteel.com/alwayscy/archive/2007/06/01/121395.html#Feedback 1 http://www.aygfsteel.com/alwayscy/comments/commentRss/121395.html http://www.aygfsteel.com/alwayscy/services/trackbacks/121395.html 转录自:q里
q实验通过?
TreeV3支持节点图标, 因ؓ和老版本的使用方式大相径庭, 而且没有文档, 所以给升到V3的developer造成一定的困扰. 我利用google, q分析了源代码后扑ֈ了方? 在TreeV3中加入图标的Ҏ如下:
首先定义一个widget: <div dojoType="TreeDocIconExtension" widgetId="docIcons"></div>
q给tree加入一个名?docIcons"的listener: <div dojoType="TreeV3" listeners="link;selector;docIcons;treeController;menu">
在定义节Ҏ需要加入一个属?nodeDocType ", ? <div dojoType="TreeNodeV3" title="nodetitle" nodeDocType="nodetype1" ></div>
最后给每一个nodedoctype定义一个名?.TreeIconXXXX"的style, q里的XXXX是l节点定义的nodeDoctype的名? <style> .TreeIconnodetype1 { background-image: url('icon.gif'); } </style>
]]> AJAX(JAVASCRIPT~程)也要讲程序结?-MVCl构在JS中的应用 http://www.aygfsteel.com/alwayscy/archive/2007/05/26/120142.html我爱佛_ 我爱佛_ Sat, 26 May 2007 02:56:00 GMT http://www.aygfsteel.com/alwayscy/archive/2007/05/26/120142.html http://www.aygfsteel.com/alwayscy/comments/120142.html http://www.aygfsteel.com/alwayscy/archive/2007/05/26/120142.html#Feedback 0 http://www.aygfsteel.com/alwayscy/comments/commentRss/120142.html http://www.aygfsteel.com/alwayscy/services/trackbacks/120142.html 看到一文?附文链接见后)Q着重归U一U开发模式: 一就是一?#8220;应用E序”Q一个系l可能有好几个这L应用E序Q?br>用JSF或者STRUTS形成?#8220;应用E序”的第一; 其中Q每一含有: controller.js负责Q?q是CONTROLLER) 接来自页面的调用Q通过AJAX装?如JSON-RPC或者DWR)调用pȝ服务Q?br> 因ؓ要异步响应,需要安排CALLBACKQ?br> 在CALLBACK中,调用VIEW及MODEL的维?br> datacopy.js负责Q?q是MODEL) 保存数据模型Qƈ由CONTROLLER来更?br> render.js负责Q?q是VIEW) 听从CONTROLLER调用Q通过取MODEL的数据,建立widgetsQ刷新页?br> 原文来自Q?a >q里?br> 另外Q有关JS的面向对象编E?lt;<javascript权威指南>>一书讲的相当不错,我简单的与C++比较了一下,Lq里?br>
]]> AJAX框架/库比较和选择QECHO2, GWT, DOJO, PROTOTYPE, JQUERY http://www.aygfsteel.com/alwayscy/archive/2007/01/05/92041.html我爱佛_ 我爱佛_ Fri, 05 Jan 2007 09:24:00 GMT http://www.aygfsteel.com/alwayscy/archive/2007/01/05/92041.html http://www.aygfsteel.com/alwayscy/comments/92041.html http://www.aygfsteel.com/alwayscy/archive/2007/01/05/92041.html#Feedback 0 http://www.aygfsteel.com/alwayscy/comments/commentRss/92041.html http://www.aygfsteel.com/alwayscy/services/trackbacks/92041.html 首先Q要在两个类别中选择Q一个是~译c,一个是非编译类别?br />Echo2/GWT是将JAVA代码~译成JAVASCRIPTQ乍看很方便Q不用掌握JS也能做出炫目界面。但q只适于不会或者不想了解JS的情况,对于q是惛_全控制和定制界面的项目就不适合?br />另外Q有一U观点认为JAVA->JS转换是一U低U语a向高U语a转换Q本w没有意义。有点像d汇编Q然后再找个工具把汇~语a代码转换成C代码来用。我虽然没完全想通这个观点,不过Q我一直用C/C++Q这几年才逐渐发现JAVA实是一U进化。没准别的是对的呢? 在Echo2和GWT中,GWT大部分工作是在客LQ尽量少跟SERVER打交道,适合大型|站q用QECHO2信奉“用到才加蝲”的信条Q所以会有大量向SERVER的访问,适合企业应用。另外,个h觉得ECHO2是个更全面的的一站式框架Q界面也非常炫。但它的开发工兯收费?br />再谈非编译类别,它们包括DOJO、PROTOTYPE、JQEURYQ下面一一介绍Q?br />先说PROTOTYPEQ它比较轻量极,能让你的代码更加化。最l典莫过于“美圆函数”: document.getElementById(’elementid? 变成$(’elementid? 它加ZJS语言的可开发性,降低了学习JS的门槛?br />DOJO最吸引人的是它的事件系l和丰富的可定制lg。它可以用Ş如下面的语句为各UHTML元素加入事gQ?br />dojo.event.connect(someNode, "onclick", doStuff); 正由于DOJO提供了强大功能,它分成了许多包,可以分别包含使用?br />JQUERY也提供了圆函数Q它的插件系l也提供象DOJO的组Ӟ但它没有PROTOTYPE那样z,也没有DOJOq么多的lg供用,但它兼收两家优点Qƈ且个头不大,文档也算完整Q所以说它介乎于前述两者之间? 所以,如果你需要非常完整的工具lgLDOJOQ如果你想优化你的JS代码Q提高书写技巧请用PROTOTYPEQ如果你想两者兼ְ用JQUERY?img src ="http://www.aygfsteel.com/alwayscy/aggbug/92041.html" width = "1" height = "1" /> ]]>
վ֩ģ壺
ɣ |
|
Ϫ |
ͨ |
|
|
|
|
ױ |
± |
|
|
֦ |
|
|
ˮ |
|
|
|
|
|
Ԫ |
|
|
|
ɽ |
|
|
|
ɽ |
ƽ |
|
|
˶ |
|
»Ȱ |
Ӽ |
|
̫ |
Ϫ |
ͭ |