GreyBox技术总结(转)


Posted in Javascript onNovember 23, 2010

类似于thinkbox,lightbox等。用于以一种别致的模式对话框方式展示页面,图片或者其它内容。这是它的官网:http://orangoo.com/labs/GreyBox/

我们先来看一下它的几个实例:

(1) 打开网页:

GreyBox技术总结(转)

(2) 显示一组图片:

GreyBox技术总结(转)

 

基本使用

(1) 进入官网,点击下载

GreyBox技术总结(转)

(2) 解压。(其中的 installation.html 对其使用进行了说明,很简单,一看就明白。我还是写一下步骤吧)

(3) 将其中的 greybox 文件夹拷贝到 web 项目根目录下,注意一定要放在 web 根目录下,放在其他目录或二级目下肯能不能使用,在我的工程里是这么部署的

GreyBox技术总结(转)

(顺便说下教训,一开始我将其放在了 js 文件夹下,因为我的 js 脚本都在里面放的,jQuery 也在,可就是不能用。。。最后放在了 根目录下就可以使用了。)

(4) 现在就可以使用了,我们用一个测试页来进行测试,代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<title>test.html</title> 
<!-- GreyBox引用开始 --> 
<script type="text/javascript"> 
var GB_ROOT_DIR = "./greybox/"; //注意这里的路径!!! 
</script> 
<script type="text/javascript" src="greybox/AJS.js"></script> 
<script type="text/javascript" src="greybox/AJS_fx.js"></script> 
<script type="text/javascript" src="greybox/gb_scripts.js"></script> 
<link href="greybox/gb_styles.css" rel="stylesheet" type="text/css" /> 
<!-- GreyBox引用结束 --> 
</head> 
<body> 
<a href="http://www.baidu.com" title="百度" rel="gb_page[500, 500]">百度一下</a> 
</body> 
</html>

这样就完成了基本的使用。

但是,在实际开发中,我们需要实现这样的效果:(1) 通过点击 button 来弹出模式窗口;(2) 关闭模式窗口后,刷新父窗口。
通过基本使用,我们可以看到官网的示例都是在点击一个超链接后弹出模态对话框。

GreyBox技术总结(转)

GreyBox技术总结(转)

等等。

但对于实际开发,我们有时需要实现通过点击 Button 来弹出一个模态对话框。其实,稍作修改就可以实现了,由于前篇文章已经对使用做了说明,这次就直接上代码了:

(1) 实现按钮点击弹出模态对话框

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
<html> 
<head> 
<title>test.html</title> 
<!-- GreyBox引用开始 --> 
<script type="text/javascript"> 
var GB_ROOT_DIR = "./greybox/"; //注意这里的路径!!! 
</script> 
<script type="text/javascript" src="greybox/AJS.js"></script> 
<script type="text/javascript" src="greybox/AJS_fx.js"></script> 
<script type="text/javascript" src="greybox/gb_scripts.js"></script> 
<link href="greybox/gb_styles.css" rel="stylesheet" type="text/css" /> 
<!-- GreyBox引用结束 --> 
<script type="text/javascript"> 
//居中弹出模态窗口 
function openWinCenter() { 
//GB_showCenter(caption, url, /* optional */ height, width, callback_fn) 
GB_showCenter("百度一下", "http://www.baidu.com", 600, 900); 
} 
//全屏弹出模态窗口 
function openWinFull() { 
//GB_showFullScreen(caption, url, callback_fn) 
GB_showFullScreen("百度一下", "http://www.baidu.com"); 
} 
</script> 
</head> 
<body> 
<input type="button" value="居中弹出" onclick="openWinCenter()"><br/> 
<input type="button" value="全屏弹出" onclick="openWinFull()"><br/> 
</body> 
</html>

具体用法可以看官方文档的“Advance Usage”部分。
(2) 开发过程中还会遇到这样的问题,在弹出窗口进行操作后,关闭时需要对父窗口进行刷新。怎么实现?

我们先看一下普通的 js 是怎么写的

<script language="javascript"> 
 
//弹出窗口 
function openSubWin() { 
window.open("","name1","width=100,height=200,toolbar=no,scrollbars=no,menubar=no,screenX=100,screenY=100"); 
} 
//关闭子窗口,刷新父窗口 
function closeSubWin() { 
window.opener.location = "http://www.baidu.com"; 
window.close(); 
} 
</script>

那如果使用 GreyBox 怎么实现呢?上代码,【注意】这个 js 是在子窗口的网页中写的:
<script type="text/javascript"> 
function close() { 
parent.parent.location.reload(); 
parent.parent.GB_hide(); 
} 
</script>

好了,至此就完成了对于 GreyBox 的学习,这些基本就可以满足我们日常的项目需要了。
Javascript 相关文章推荐
点图片上一页下一页翻页效果
Jul 09 Javascript
JQuery的html(data)方法与&amp;lt;script&amp;gt;脚本块的解决方法
Mar 09 Javascript
jQuery 对Select的操作备忘记录
Jul 04 Javascript
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
Jul 08 Javascript
Egret引擎开发指南之运行项目
Sep 03 Javascript
jQuery获得document和window对象宽度和高度的方法
Mar 25 Javascript
jQuery实现按钮只点击一次后就取消点击事件绑定的方法
Jun 26 Javascript
【经验总结】编写JavaScript代码时应遵循的14条规律
Jun 20 Javascript
Jquery和BigFileUpload实现大文件上传及进度条显示
Jun 27 Javascript
SVG动画vivus.js库使用小结(实例代码)
Sep 14 Javascript
JS+CSS实现滚动数字时钟效果
Dec 25 Javascript
基于postman获取动态数据过程详解
Sep 08 Javascript
Js基础学习资料
Nov 23 #Javascript
JavaScript 程序编码规范
Nov 23 #Javascript
javascript整除实现代码
Nov 23 #Javascript
flexigrid 参数说明
Nov 23 #Javascript
js 判断checkbox是否选中的实现代码
Nov 23 #Javascript
js 处理URL实用技巧
Nov 23 #Javascript
两个Javascript小tip资料
Nov 23 #Javascript
You might like
分享下PHP register_globals 值为on与off的理解
2013/09/26 PHP
Laravel框架数据库迁移操作实例详解
2020/04/06 PHP
强制设为首页代码
2006/06/19 Javascript
javascript 获取url参数和script标签中获取url参数函数代码
2010/01/22 Javascript
利用JS重写Cognos右键菜单的实现代码
2010/04/11 Javascript
js切换div css注意的细节
2012/12/10 Javascript
Js中的onblur和onfocus事件应用介绍
2013/08/27 Javascript
json数据与字符串的相互转化示例
2013/09/18 Javascript
基于jquery实现轮播特效
2016/04/22 Javascript
ionic js 模型 $ionicModal 可以遮住用户主界面的内容框
2016/06/06 Javascript
分享一个原生的JavaScript拖动方法
2016/09/25 Javascript
微信小程序 页面跳转传递值几种方法详解
2017/01/12 Javascript
Javascript前端经典的面试题及答案
2017/03/14 Javascript
详解React开发必不可少的eslint配置
2018/02/05 Javascript
使用layui的router来进行传参的实现方法
2019/09/06 Javascript
微信小程序列表时间戳转换实现过程解析
2019/10/12 Javascript
解决axios post 后端无法接收数据的问题
2019/10/29 Javascript
Javascript异步执行不按顺序解决方案
2020/04/30 Javascript
vue-cli中实现响应式布局的方法
2021/03/02 Vue.js
Python使用poplib模块和smtplib模块收发电子邮件的教程
2016/07/02 Python
Python新手入门最容易犯的错误总结
2017/04/24 Python
python 实现视频流下载保存MP4的方法
2019/01/09 Python
Python线程之定位与销毁的实现
2019/02/17 Python
Python multiprocessing多进程原理与应用示例
2019/02/28 Python
Python获取时间戳代码实例
2019/09/24 Python
CSS3制作3D立方体loading特效
2020/11/09 HTML / CSS
Html5新标签datalist实现输入框与后台数据库数据的动态匹配
2017/05/18 HTML / CSS
铁路工务反思材料
2014/02/07 职场文书
奉献家乡演讲稿
2014/09/16 职场文书
兵马俑的导游词
2015/02/02 职场文书
小学班主任自我评价
2015/03/11 职场文书
幼儿园毕业典礼园长致辞
2015/07/29 职场文书
2019年年中工作总结讲话稿模板
2019/03/25 职场文书
用Python编写简单的gRPC服务的详细过程
2021/07/04 Python
浅谈Redis的keys命令到底有多慢
2021/10/05 Redis
Golang 遍历二叉树
2022/04/19 Golang