1. JavaScript对象的引用 为了减少JavaScript对象的下载次数,Tasian只会在浏览器第一次请求应用时才会下载JavaScript文件。JavaScript对象只会驻留在Top级窗体,任何其它窗体需要引用到该JavaScript对象,只需要在引如下的方式进行引用就行: 需要引用的窗体Button = top.Button //参阅MscrRouter.js 而Button真正定义的JavaScript文件处于Top窗体,为了保证定义的对象格式能跨浏览器有效,Tasian使用了如下的格式进行对象定义: //定义对象名 function MscrButton() { }; //定义对象的方法 MscrButton.onClick = function(strWin, strName) { MscrSystem.setAction(strWin, strName, "click", ""); }; 请
注意,在每个函数后面都有一个分号,这一点对于Tasian非常的重要。因为Tasian中所使用的JavaScript文件都是经过压缩的,并且将全局
的JavaScript对象定义合成在一个JavaScript文件中。它的好处是减少网络流量、减少JavaScript对象对客户端资源的占用及减少
对服务器请求的发送。 2. 遮罩运用 遮罩是指在一个对象上放置一个新的对象,新对象便是遮罩层。它能截获所有被遮罩对象的事件。 Tasian
所有的窗体都是在一个Iframe, 对于窗体拖动,在IE中能容易地进行事件捕捉处理,可以在非IE的浏览器中,当Mouse移到Iframe时,该
Iframe将会最先处理该事件,使得对Iframe的拖动无效。所以Tasian会在Iframe上加上一个可以关开的遮罩层DIV元素,当要进行窗体
对象拖动时,该层会打开,当拖动完成后,该层会关闭。 3. 模态窗体Tasian有一个特殊的窗体,只有当它关闭时才能操作其它窗体内容。该窗体叫模态窗体。在JavaScript实现模拟窗体时,也是使用了一个DIV层,使得它始终于模态窗体的下一级,这样它就能截获所有对它父窗体的操作事件。 4. 动态事件绑定 在IE在动态事件绑定是通过attachEvent实现的,而在Mozilla系列是使用addEventListener。以下是代码摘自document.js两者的使用方法 if (top.isIE) { oDB.setCapture(); oDB.attachEvent("onmousemove", __resizingMe); oDB.attachEvent("onmouseup", __endResizeMe); } else { document.captureEvents(Event.MOUSEEVENT | Event.MOUSEUP); document.addEventListener("mousemove", __resizingMe, false); document.addEventListener("mouseup", __endResizeMe, false); } …. if (top.isIE) { oDB.detachEvent("onmousemove", __resizingMe); oDB.detachEvent("onmouseup", __endResizeMe); oDB.releaseCapture(); } else { document.releaseEvents(Event.MOUSEMOVE | Event.MOUSEUP); document.removeEventListener("mousemove", __resizingMe, false); document.removeEventListener("mouseup", __endResizeMe, false); } 5. Style对象 对
于IE中HTML元素的Style对象其强大之处大家都了解,可是对于Mozilla中HTML的Style对象由于其相关介绍实在太少,所以大家都对它
很陌生。其实Mozilla中的Style仍然很强大,IE能完成的功能,它大都能完成,只不过大家不了解罢了。比如IE中有filter属性用来设置渐
近色,而Mozilla中可以用alpha实现。 以下代码摘自MscrSystem.js if (!isIE) { oEnMsk.style.filter = "alpha(opacity = 35)"; oEnMsk.style.MozOpacity = 0.35; } else { var strHTML = " strHTML += ">"; oObj.parentNode.insertAdjacentHTML("BeforeEnd", strHTML); } 当然Mozilla的Style属性远不止如此,它还可以设置DIV的外观:圆形、郁圆形等。 |