BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / www-technology / #9509同步于 2010/1/24
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖

[求助]基于HTML和JavaScript开发“页面窗口系统”组件,javascr

efs
2010/1/24镜像同步5 回复
需求概述 提供一套Js,可以让用户在HTML中使用div标签建立一个页面内部的窗口系统。当然,这些div都有一个特殊的属性:pcxType,以此标明其与普通div的不同。当pcxType=” WindowManager”时,标明这个div将要扮演窗口管理层的角色,当pcxType=” Window”时,标明这个div将要扮演窗口的角色。 具体功能要求 作为窗口,要有以下行为特征: 1) 可移动(在其上按住鼠标左键) 2) 可放缩(在四边按住鼠标左键) 3) 可关闭(点击右上角的关闭图标),实际上是隐藏 4) 可最大化(点击右上角的最大化图标),充满整个窗口管理层(只显示内容) 5) 可最小化(点击右上角的最小化图标),显示最小的窗口(不显示内容) … 窗口在正常状态下和发生操作时的外观显示和用户体验和ExtJs的window保持一致 作为窗口管理层,要有以下行为特征: 1) 每个窗口都有ZIndex属性,在一个窗口管理层内的多个窗口按照ZIndex顺序形成遮挡,ZIndex=0表示处于最前端,当点击其中一个窗口时,窗口管理层要把被点击的窗口的ZIndex设为0,并调整辖内所有窗口的ZIndex值 2) 在窗口管理层的顶端,以一组Tab页标签形式列出所有窗口,要能看出当前ZIndex为0的窗口。当点击其中一个Tab页标签时,和点击窗口产生一样的效果 3) 当内含窗口不能完整显示时,要自动出现滚动条 用户对窗口发出的所有操作,由于这些操作会改变窗口和窗口管理层的状态(位置、大小、最大、最小、关闭、滚动位置等),改变后的状态必须被记入窗口管理层下面的一个id为窗口管理层id+“_state”的不可见输入标签中,以便适当的时候上传到服务器 HTML样例 <div pcxType=”WindowManager” id=”wm01” …> <input id=”wm01_state” …></input> … <div pcxType=”Window” id=”w01” …> … </div> … <div pcxType=”Window” id=”w02” …> … <div> … </div> 显然,这个组件的使用方式和技术实施方案都和DOJO类似。 其他要求 能被用于ASP.NET AJAX的UpdatePanel中 另注:有能解决此问题者,请跟我联系efszhong@163.com,价格面议!
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
ericyosho机器人#1 · 2010/1/24
这都那么多相似了,为啥不直接用dojo或者ext呢?
efs机器人#2 · 2010/1/25
【 在 ericyosho 的大作中提到: 】 : 这都那么多相似了,为啥不直接用dojo或者ext呢? 已经用了ASP.NET AJAX 1.0,再用其它脚本框架会有问题,比如UPDATE PANEL就有问题
ericyosho机器人#3 · 2010/1/25
1. google上搜一下吧,许多帖子都是关于asp.net 和dojo或者ext一起使用的。 觉得比你重新写一个要快很多。 2. Microsoft 即将会对 jQuery 有官方的支持,你可以参考一下。
efs机器人#4 · 2010/1/26
【 在 ericyosho 的大作中提到: 】 : 1. google上搜一下吧,许多帖子都是关于asp.net 和dojo或者ext一起使用的。 : 觉得比你重新写一个要快很多。 : 2. Microsoft 即将会对 jQuery 有官方的支持,你可以参考一下。 : ................... 谢谢!这些我也查过了,asp.net不管和ext还是dojo都会有些兼容问题,updatepanel的问题也有些解决方案,不过两个脚本框架加载在一个DOM上运行,很难避免会有其它问题,实践使用过程中也常会有些莫名奇妙的问题很难查找原因。
efs机器人#5 · 2010/2/26
顶!