中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Java > J2EE
WEB2.0开发之Ajax设计模式之Lightbox
作者:start 时间:2006-09-28 11:52 出处:ajaxcn 责编:月夜寒箫
              摘要:WEB2.0开发之Ajax设计模式之Lightbox

Lightbox 这个词还真不好翻译,勉强硬解为"灯笼"。

Lightbox的效果类似于WinXP操作系统的注销/关机对话框,除去屏幕中心位置的对话框,其他的区域都以淡出的效果逐渐变为银灰色以增加对比度,此时除了对话框内的表单控件,没有其他区域可以获取焦点。

Lightbox的作用则相当于从前只在IE中被支持的"Modal Dialog";现在在FireFox也可用window.open(url, name, " modal=yes ");

来实现同样的效果。使用"Modal Dialog"将限制用户的操作于弹出的对话框中,只有完成设定好的操作后方才关闭。在一些逻辑敏感的应用中强制吸引用户的注意力以防止用户的误操作导致程序逻辑淆乱。

其实 Lightbox 并不新鲜,在前年Ajax未诞生之前,它是以 "Inline Popup"的名号出现的。诞生的原因是因为屏蔽弹出窗口的技术纷纷被浏览器采用,而浏览器厂商间也没有一个统一的 Popup 解决方案。当时我记得还有一些说"Inline Popup"破解了弹出窗口屏蔽的报道。

"Inline Popup" 并不被很多人关注,不过我还是发现国内的163信箱去年改版推出的时候大量使用了此效果。Ajax 名正言顺之时,"Inline Popup"也重装再现了,并换了一个有美感的名字 "Lightbox"。

在今年,Lightbox JS最早被其作者Lokesh Dhakar用来放大显示图片覆盖于当前页面之上,其是用CSS来定义图片容器,用一幅半透明的png图片实现渐变阴暗的效果。使用相当简单:

1.加载lightbox.js

2. 给图片链接增加一个rel="lightbox"属性。如:

image #1

受 Lightbox 的启发,Chris Campbell 认为并决定让Lightbox Gone Wild!。他引入了Prototype1.4.0,配合CSS与HTML 标签的class属性重新实现Lightbox的效果,同时扩展LightBox原来的覆盖显示图片的单纯功能,使得可以通过流行的异步Updator技术动态加载表单。可以去体验一下他提供的 demo。不过似乎他的实现有一些bug,因为该demo在我的FireFox1.5和IE7beta2上都会导致CPU占用率100%。

alwaysBETA 很快也推出了自己的改进方案。他没有增加新的功能,但是通过引入微型效果类库Moo.FX让Lightbox更漂亮,更容易定制。

第一次使用WinXP的时候,关机时的阴暗渐变效果让我颇为惊艳。利用Lightbox引导用户的注意力完成预先设定的操作,良好的对比度效果营造温和的视觉氛围。相信在当前交互界面日益接近桌面的Web应用中,Lightbox 也将会成为Ajax的设计模式之一。

此时我发现就其功能和效果而言,"Lightbox"翻译成"灯笼"似乎也没那么牵强附会了。

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有