boxy基于jquery的彈出層對(duì)話框插件擴(kuò)展應(yīng)用 彈出層選擇器
更新時(shí)間:2010年11月21日 22:23:36 作者:
當(dāng)大家進(jìn)行復(fù)雜功能設(shè)計(jì)的時(shí)候,在對(duì)多級(jí)聯(lián)選擇進(jìn)行設(shè)計(jì),為了獲得更好的用戶(hù)體驗(yàn)和節(jié)省頁(yè)面空間,往往會(huì)使用彈出層的方法。
我們使用熱門(mén)的jquery進(jìn)行設(shè)計(jì),同時(shí)我們選擇效果比較優(yōu)秀的boxy彈出插件進(jìn)行擴(kuò)展(關(guān)于boxy的相關(guān)資料,請(qǐng)參照張?chǎng)涡癫┛蚳ttp://www.zhangxinxu.com/wordpress/?p=318)。下面介紹boxy作為選擇器框架的應(yīng)用。
對(duì)于選擇器,相信用過(guò)招聘網(wǎng)站的人都不會(huì)陌生(就是那個(gè)點(diǎn)擊就彈出的,選擇行業(yè)、職位和地區(qū)的東西),選擇器難點(diǎn)就在于樣式調(diào)試,主要針對(duì)的是IE6。這里介紹行業(yè)、職位和地區(qū)選擇器,下載的Demo包含這三個(gè)選擇器。
行業(yè)選擇器:無(wú)關(guān)聯(lián),調(diào)用語(yǔ)句為Boxy.industry(value, callback, options),參數(shù)value為已選定值編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),callback為可定義回調(diào)函數(shù),傳入callback的值為行業(yè)選擇器選中項(xiàng)的編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),options為boxy插件可選參數(shù)。
調(diào)用例子:選擇編號(hào)為1和2的行業(yè),并且定義選擇器標(biāo)題為"行業(yè)類(lèi)別選擇器"
$("#industry").click(function() {
Boxy.industry("1,2", function(val) {
alert("你選擇的是: " + val);
}, { title: "行業(yè)類(lèi)別選擇器" });
return false;
});
職位選擇器:二級(jí)聯(lián),調(diào)用語(yǔ)句為Boxy.job(value, shown, callback, options),參數(shù)value為已選定值編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割,以b開(kāi)頭表示選擇職位大類(lèi),以s開(kāi)頭表示選擇職位小類(lèi)),參數(shù)shown表示展示的職位大類(lèi)的編號(hào),參數(shù)callback為可定義回調(diào)函數(shù),傳入callback的值為職位選擇器選中項(xiàng)的編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),options為boxy插件可選參數(shù)。
調(diào)用例子:選擇編號(hào)為1的職位小類(lèi),編號(hào)為2的職位大類(lèi),定義選擇器的名稱(chēng)為職位類(lèi)別選擇器
$("#job").click(function() {
Boxy.job("s1,b2", "2", function(val) {
alert("你選擇的是: " + val);
}, { title: "職位類(lèi)別選擇器" });
return false;
});

職位選擇器:三級(jí)聯(lián),調(diào)用語(yǔ)句為Boxy.area(value, shown, callback, options),參數(shù)value為已選定值編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割,以p開(kāi)頭表示選擇省份,以c開(kāi)頭表示選擇城市,以d開(kāi)頭表示選擇縣區(qū)),參數(shù)shown表示展示的地區(qū)的編號(hào),參數(shù)callback為可定義回調(diào)函數(shù),傳入callback的值為地區(qū)選擇器選中項(xiàng)的編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),options為boxy插件可選參數(shù)。
調(diào)用例子:選擇編號(hào)為1和2的縣或區(qū),定義選擇器的名稱(chēng)為工作地區(qū)選擇器
$("#city").click(function() {
Boxy.area("d1,c7", "1,724", function(val) {
alert("你選擇的是: " + val);
}, { title: "工作地區(qū)選擇器" });
return false;
});

存在Bug:
1.IE6 checkbox的margin設(shè)置會(huì)走樣,IE6的checkbox邊框清空是無(wú)效的,但對(duì)其它瀏覽器是有效的,而且很多人喜歡全局設(shè)定input的margin/padding為零,為了統(tǒng)一樣式,唯有不管IE6了。
2.IE8 環(huán)境下,css設(shè)置選項(xiàng)<a>的hover效果遲鈍甚至沒(méi)反應(yīng),其它瀏覽器不存在這個(gè)問(wèn)題(包括IE6),js代碼解決也不是可取之道,代碼hover反應(yīng)還是有點(diǎn)慢。實(shí)在搞不懂IE8為什么會(huì)出現(xiàn)這種問(wèn)題,知道的那位告訴我吧。
3.IE6下超長(zhǎng)的選中項(xiàng),顯示的區(qū)域不夠,在父標(biāo)簽中不會(huì)自動(dòng)換行,而是在顯示的選中項(xiàng)自身內(nèi)部換行輸出文字,造成樣式走樣。這個(gè)問(wèn)題我也不知道怎么解決,誰(shuí)知道告訴我吧。
4.暫時(shí)還沒(méi)發(fā)現(xiàn)(可能大家會(huì)說(shuō)IE6下確定按鈕的hover效果,這個(gè)也不是什么bug,只是無(wú)關(guān)緊要的我懶得改,把標(biāo)簽該<a>就行了,不過(guò)實(shí)在不喜歡<a>,整天為IE6做無(wú)用功)。
優(yōu)點(diǎn):
1.當(dāng)然是漂亮唄!
2.三個(gè)選擇器分別表示三種級(jí)聯(lián)關(guān)系的選擇器,大家可以直接修改Demo中的數(shù)據(jù)源,及主體框架中的文字,即可變作其它的選擇器。
3.還有改進(jìn)的空間,誰(shuí)去把demo的css樣式整合一下,發(fā)上來(lái)吧。
悄悄告訴大家,選擇器的外框圓角效果是使用png圖片實(shí)現(xiàn)的,如果想更改透明程度,唯有重做圖片了,如果愿意撇開(kāi)IE6的話,可以使用另一種常用的圓角方法(不用圖片只用css樣式),方法已經(jīng)寫(xiě)進(jìn)boxy插件當(dāng)中了(被我注釋掉,包括樣式文件),還有一種圓角方法在demo的round-corner.html文件中也介紹了,ExtendedBoxy.html為選擇器的demo文件。其它的兩個(gè)關(guān)于Boxy的html文件可是張?chǎng)涡裢瑢W(xué)寫(xiě)的哦,張同學(xué)博客http://www.zhangxinxu.com/php/上可是有很多好東西的,大家有空上去看看吧。
Demo下載地址:/201011/yuanma/jquery-plugin-ExtendedBoxy.rar
對(duì)于選擇器,相信用過(guò)招聘網(wǎng)站的人都不會(huì)陌生(就是那個(gè)點(diǎn)擊就彈出的,選擇行業(yè)、職位和地區(qū)的東西),選擇器難點(diǎn)就在于樣式調(diào)試,主要針對(duì)的是IE6。這里介紹行業(yè)、職位和地區(qū)選擇器,下載的Demo包含這三個(gè)選擇器。
行業(yè)選擇器:無(wú)關(guān)聯(lián),調(diào)用語(yǔ)句為Boxy.industry(value, callback, options),參數(shù)value為已選定值編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),callback為可定義回調(diào)函數(shù),傳入callback的值為行業(yè)選擇器選中項(xiàng)的編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),options為boxy插件可選參數(shù)。
調(diào)用例子:選擇編號(hào)為1和2的行業(yè),并且定義選擇器標(biāo)題為"行業(yè)類(lèi)別選擇器"
復(fù)制代碼 代碼如下:
$("#industry").click(function() {
Boxy.industry("1,2", function(val) {
alert("你選擇的是: " + val);
}, { title: "行業(yè)類(lèi)別選擇器" });
return false;
});

職位選擇器:二級(jí)聯(lián),調(diào)用語(yǔ)句為Boxy.job(value, shown, callback, options),參數(shù)value為已選定值編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割,以b開(kāi)頭表示選擇職位大類(lèi),以s開(kāi)頭表示選擇職位小類(lèi)),參數(shù)shown表示展示的職位大類(lèi)的編號(hào),參數(shù)callback為可定義回調(diào)函數(shù),傳入callback的值為職位選擇器選中項(xiàng)的編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),options為boxy插件可選參數(shù)。
調(diào)用例子:選擇編號(hào)為1的職位小類(lèi),編號(hào)為2的職位大類(lèi),定義選擇器的名稱(chēng)為職位類(lèi)別選擇器
復(fù)制代碼 代碼如下:
$("#job").click(function() {
Boxy.job("s1,b2", "2", function(val) {
alert("你選擇的是: " + val);
}, { title: "職位類(lèi)別選擇器" });
return false;
});

職位選擇器:三級(jí)聯(lián),調(diào)用語(yǔ)句為Boxy.area(value, shown, callback, options),參數(shù)value為已選定值編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割,以p開(kāi)頭表示選擇省份,以c開(kāi)頭表示選擇城市,以d開(kāi)頭表示選擇縣區(qū)),參數(shù)shown表示展示的地區(qū)的編號(hào),參數(shù)callback為可定義回調(diào)函數(shù),傳入callback的值為地區(qū)選擇器選中項(xiàng)的編號(hào)集合(字符串類(lèi)型,編號(hào)間以逗號(hào)分割),options為boxy插件可選參數(shù)。
調(diào)用例子:選擇編號(hào)為1和2的縣或區(qū),定義選擇器的名稱(chēng)為工作地區(qū)選擇器
復(fù)制代碼 代碼如下:
$("#city").click(function() {
Boxy.area("d1,c7", "1,724", function(val) {
alert("你選擇的是: " + val);
}, { title: "工作地區(qū)選擇器" });
return false;
});

存在Bug:
1.IE6 checkbox的margin設(shè)置會(huì)走樣,IE6的checkbox邊框清空是無(wú)效的,但對(duì)其它瀏覽器是有效的,而且很多人喜歡全局設(shè)定input的margin/padding為零,為了統(tǒng)一樣式,唯有不管IE6了。
2.IE8 環(huán)境下,css設(shè)置選項(xiàng)<a>的hover效果遲鈍甚至沒(méi)反應(yīng),其它瀏覽器不存在這個(gè)問(wèn)題(包括IE6),js代碼解決也不是可取之道,代碼hover反應(yīng)還是有點(diǎn)慢。實(shí)在搞不懂IE8為什么會(huì)出現(xiàn)這種問(wèn)題,知道的那位告訴我吧。
3.IE6下超長(zhǎng)的選中項(xiàng),顯示的區(qū)域不夠,在父標(biāo)簽中不會(huì)自動(dòng)換行,而是在顯示的選中項(xiàng)自身內(nèi)部換行輸出文字,造成樣式走樣。這個(gè)問(wèn)題我也不知道怎么解決,誰(shuí)知道告訴我吧。
4.暫時(shí)還沒(méi)發(fā)現(xiàn)(可能大家會(huì)說(shuō)IE6下確定按鈕的hover效果,這個(gè)也不是什么bug,只是無(wú)關(guān)緊要的我懶得改,把標(biāo)簽該<a>就行了,不過(guò)實(shí)在不喜歡<a>,整天為IE6做無(wú)用功)。
優(yōu)點(diǎn):
1.當(dāng)然是漂亮唄!
2.三個(gè)選擇器分別表示三種級(jí)聯(lián)關(guān)系的選擇器,大家可以直接修改Demo中的數(shù)據(jù)源,及主體框架中的文字,即可變作其它的選擇器。
3.還有改進(jìn)的空間,誰(shuí)去把demo的css樣式整合一下,發(fā)上來(lái)吧。
悄悄告訴大家,選擇器的外框圓角效果是使用png圖片實(shí)現(xiàn)的,如果想更改透明程度,唯有重做圖片了,如果愿意撇開(kāi)IE6的話,可以使用另一種常用的圓角方法(不用圖片只用css樣式),方法已經(jīng)寫(xiě)進(jìn)boxy插件當(dāng)中了(被我注釋掉,包括樣式文件),還有一種圓角方法在demo的round-corner.html文件中也介紹了,ExtendedBoxy.html為選擇器的demo文件。其它的兩個(gè)關(guān)于Boxy的html文件可是張?chǎng)涡裢瑢W(xué)寫(xiě)的哦,張同學(xué)博客http://www.zhangxinxu.com/php/上可是有很多好東西的,大家有空上去看看吧。
Demo下載地址:/201011/yuanma/jquery-plugin-ExtendedBoxy.rar
您可能感興趣的文章:
- jQuery Dialog 彈出層對(duì)話框插件
- 基于jQuery的彈出警告對(duì)話框美化插件(警告,確認(rèn)和提示)
- jQuery UI Dialog 創(chuàng)建友好的彈出對(duì)話框?qū)崿F(xiàn)代碼
- jquery刪除提示框彈出是否刪除對(duì)話框
- Jquery EasyUI中彈出確認(rèn)對(duì)話框以及加載效果示例代碼
- JQuery彈出炫麗對(duì)話框的同時(shí)讓背景變灰色
- jQuery實(shí)現(xiàn)單擊按鈕遮罩彈出對(duì)話框(仿天貓的刪除對(duì)話框)
- 非常強(qiáng)大的 jQuery.AsyncBox 彈出對(duì)話框插件
- Jquery實(shí)現(xiàn)頁(yè)面加載時(shí)彈出對(duì)話框代碼
- jQuery實(shí)現(xiàn)單擊按鈕遮罩彈出對(duì)話框效果(2)
相關(guān)文章
淺析jQuery事件之on()方法綁定多個(gè)選擇器,多個(gè)事件
下面小編就為大家?guī)?lái)一篇淺析jQuery事件之on()方法綁定多個(gè)選擇器,多個(gè)事件。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家。也給大家做個(gè)參考2016-04-04Jquery UI震動(dòng)效果實(shí)現(xiàn)原理及步驟
如果你想你的博客頁(yè)面某些部分引起讀者的注意,你可以使這些部分震動(dòng),如廣告等等,今天這篇文章將介紹怎樣使你的頁(yè)面中的元素震動(dòng)起來(lái),感興趣的你可不要錯(cuò)過(guò)了哦,或許對(duì)你學(xué)習(xí)jquery ui 有所幫助2013-02-02Jquery跨域獲得Json的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇Jquery跨域獲得Json的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05jQuery實(shí)現(xiàn)拼圖小游戲(實(shí)例講解)
下面小編就為大家?guī)?lái)一篇jQuery實(shí)現(xiàn)拼圖小游戲(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-07-07jquery 動(dòng)態(tài)合并單元格的實(shí)現(xiàn)方法
下面小編就為大家?guī)?lái)一篇jquery 動(dòng)態(tài)合并單元格的實(shí)現(xiàn)方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08jQuery過(guò)濾特殊字符及JS字符串轉(zhuǎn)為數(shù)字
這篇文章主要介紹了jQuery過(guò)濾特殊字符及JS字符串轉(zhuǎn)為數(shù)字 的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-05-05jquery操作select元素和option的實(shí)例代碼
這篇文章主要介紹了jquery操作select元素和option的實(shí)例代碼,感興趣的小伙伴們可以參考一下2016-02-02JavaScript 學(xué)習(xí)筆記之一jQuery寫(xiě)法圖片等比縮放以及預(yù)加載
以前對(duì)于JavaScript總是在用到的時(shí)候在頁(yè)面上寫(xiě)幾個(gè)函數(shù),基本沒(méi)考慮到函數(shù)的封裝與重用,最近有個(gè)項(xiàng)目可能對(duì)于這方面要求有點(diǎn)高,所以就研究了下類(lèi)似jQuery的封裝2012-06-06