GreyBox技術(shù)總結(jié)(轉(zhuǎn))
我們先來看一下它的幾個實例:
(1) 打開網(wǎng)頁:
(2) 顯示一組圖片:
基本使用
(1) 進(jìn)入官網(wǎng),點擊下載
(2) 解壓。(其中的 installation.html 對其使用進(jìn)行了說明,很簡單,一看就明白。我還是寫一下步驟吧)
(3) 將其中的 greybox 文件夾拷貝到 web 項目根目錄下,注意:一定要放在 web 根目錄下,放在其他目錄或二級目下肯能不能使用,在我的工程里是這么部署的:
?。槺阏f下教訓(xùn),一開始我將其放在了 js 文件夾下,因為我的 js 腳本都在里面放的,jQuery 也在,可就是不能用。。。最后放在了 根目錄下就可以使用了。)
(4) 現(xiàn)在就可以使用了,我們用一個測試頁來進(jìn)行測試,代碼如下:
<!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引用結(jié)束 -->
</head>
<body>
<a title="百度" rel="gb_page[500, 500]">百度一下</a>
</body>
</html>
這樣就完成了基本的使用。
但是,在實際開發(fā)中,我們需要實現(xiàn)這樣的效果:(1) 通過點擊 button 來彈出模式窗口;(2) 關(guān)閉模式窗口后,刷新父窗口。
通過基本使用,我們可以看到官網(wǎng)的示例都是在點擊一個超鏈接后彈出模態(tài)對話框。
等等。
但對于實際開發(fā),我們有時需要實現(xiàn)通過點擊 Button 來彈出一個模態(tài)對話框。其實,稍作修改就可以實現(xiàn)了,由于前篇文章已經(jīng)對使用做了說明,這次就直接上代碼了:
(1) 實現(xiàn)按鈕點擊彈出模態(tài)對話框
<!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引用結(jié)束 -->
<script type="text/javascript">
//居中彈出模態(tài)窗口
function openWinCenter() {
//GB_showCenter(caption, url, /* optional */ height, width, callback_fn)
GB_showCenter("百度一下", "http://www.baidu.com", 600, 900);
}
//全屏彈出模態(tài)窗口
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) 開發(fā)過程中還會遇到這樣的問題,在彈出窗口進(jìn)行操作后,關(guān)閉時需要對父窗口進(jìn)行刷新。怎么實現(xiàn)?
我們先看一下普通的 js 是怎么寫的
<script language="javascript">
//彈出窗口
function openSubWin() {
window.open("","name1","width=100,height=200,toolbar=no,scrollbars=no,menubar=no,screenX=100,screenY=100");
}
//關(guān)閉子窗口,刷新父窗口
function closeSubWin() {
window.opener.location = "http://www.baidu.com";
window.close();
}
</script>
那如果使用 GreyBox 怎么實現(xiàn)呢?上代碼,【注意】這個 js 是在子窗口的網(wǎng)頁中寫的:
<script type="text/javascript">
function close() {
parent.parent.location.reload();
parent.parent.GB_hide();
}
</script>
好了,至此就完成了對于 GreyBox 的學(xué)習(xí),這些基本就可以滿足我們?nèi)粘5捻椖啃枰恕?
相關(guān)文章
js實現(xiàn)不提示直接關(guān)閉網(wǎng)頁窗口
本文主要介紹了js實現(xiàn)不提示直接關(guān)閉網(wǎng)頁窗口的方法。具有很好的參考價值,下面跟著小編一起來看下吧2017-03-03