jQuery結(jié)合CSS制作漂亮的select下拉菜單
我們?cè)谶M(jìn)行表單設(shè)計(jì)時(shí),可能要用到select下拉選項(xiàng)控件,遺憾的是,IE瀏覽器默認(rèn)的select控件外觀非常丑陋,而且不能用樣式來控制,不能在選項(xiàng)中添加圖片等信息。今天我將通過實(shí)例來講解如何用CSS和jQuery來制作漂亮的下拉選項(xiàng)菜單。
XHTML
<div id="dropdown"> <p>請(qǐng)選擇城市</p> <ul> <li><a href="#">長(zhǎng)沙</a></li> <li><a href="#">北京</a></li> <li><a href="#">南京</a></li> <li><a href="#">堪培拉</a></li> <li><a href="#">多倫多</a></li> </ul> </div>
可以看出,我們使用div來替換下拉選項(xiàng)控件原生的select標(biāo)簽。
CSS
#dropdown{width:186px; margin:80px auto; position:relative} #dropdown p{width:150px; height:24px; line-height:24px; padding-left:4px; padding-right:30px; border:1px solid #a9c9e2; background:#e8f5fe url(arrow.gif) no-repeat right 4px; color:#807a62; cursor:pointer} #dropdown ul{width:184px; background:#e8f5fe; margin-top:2px; border:1px solid #a9c9e2; position:absolute; display:none} #dropdown ul li{height:24px; line-height:24px; text-indent:10px} #dropdown ul li a{display:block; height:24px; color:#807a62; text-decoration:none} #dropdown ul li a:hover{background:#c6dbfc; color:#369}
樣式不要多講,你可以修改CSS中的背景色和字體顏色,甚至其他任意定義的樣式。有一個(gè)下拉箭頭的小圖標(biāo),已經(jīng)打包在附件里了。
jQuery
首先,當(dāng)單擊“請(qǐng)選擇城市”時(shí),判斷下拉的層“ul”是否處于顯示狀態(tài),如果是則隱藏下拉選項(xiàng),否則則打開(下滑)下拉選項(xiàng)
$("#dropdown p").click(function(){ var ul = $("#dropdown ul"); if(ul.css("display")=="none"){ ul.slideDown("fast"); }else{ ul.slideUp("fast"); } });
然后,當(dāng)單擊下拉選項(xiàng)時(shí),獲取選項(xiàng)內(nèi)容,將選項(xiàng)內(nèi)容寫入到<p>標(biāo)簽中,同時(shí)隱藏下拉選項(xiàng)。
$("#dropdown ul li a").click(function(){ var txt = $(this).text(); $("#dropdown p").html(txt); $("#dropdown ul").hide(); });
這樣就完成了一個(gè)簡(jiǎn)單的下拉選項(xiàng)的操作,是不是很簡(jiǎn)單啊。
當(dāng)然,如果與后臺(tái)交互,需要獲取選項(xiàng)的value值,那就需要先定義XHTML。
<div id="dropdown"> <p>請(qǐng)選擇城市</p> <ul> <li><a href="#" rel="1">長(zhǎng)沙</a></li> <li><a href="#" rel="2">北京</a></li> <li><a href="#" rel="3">南京</a></li> <li><a href="#" rel="4">堪培拉</a></li> <li><a href="#" rel="5">多倫多</a></li> </ul> </div> <div id="result"></div>
從代碼中可以看出,在給a標(biāo)簽加個(gè)rel屬性,并賦值,就相當(dāng)于select的option標(biāo)簽的value值。接下來就是通過jQuery獲取rel值,請(qǐng)看代碼:
$("#dropdown ul li a").click(function(){ var txt = $(this).text(); $("#dropdown p").html(txt); var value = $(this).attr("rel"); $("#dropdown ul").hide(); $("#result").html("您選擇了"+txt+",值為:"+value); });
這樣就完成了一個(gè)完整的下拉選項(xiàng)的操作。
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
- jquery無限級(jí)聯(lián)下拉菜單簡(jiǎn)單實(shí)例演示
- jQuery實(shí)現(xiàn)非常實(shí)用漂亮的select下拉菜單選擇效果
- jQuery+PHP+MySQL二級(jí)聯(lián)動(dòng)下拉菜單實(shí)例講解
- jquery實(shí)現(xiàn)鼠標(biāo)滑過顯示二級(jí)下拉菜單效果
- jQuery實(shí)現(xiàn)精美的多級(jí)下拉菜單特效
- 用jquery實(shí)現(xiàn)的一個(gè)超級(jí)簡(jiǎn)單的下拉菜單
- jquery仿京東導(dǎo)航/仿淘寶商城左側(cè)分類導(dǎo)航下拉菜單效果
- 來自國(guó)外的30個(gè)基于jquery的Web下拉菜單
- 用jquery實(shí)現(xiàn)下拉菜單效果的代碼
- jquery實(shí)現(xiàn)二級(jí)導(dǎo)航下拉菜單效果實(shí)例
相關(guān)文章
jquery中ajax使用error調(diào)試錯(cuò)誤的方法
這篇文章主要介紹了jquery中ajax使用error調(diào)試錯(cuò)誤的方法,實(shí)例分析了Ajax的使用方法與error函數(shù)調(diào)試錯(cuò)誤的技巧,需要的朋友可以參考下2015-02-02jQuery插件WebUploader實(shí)現(xiàn)文件上傳
這篇文章主要為大家詳細(xì)介紹了jQuery插件WebUploader實(shí)現(xiàn)文件上傳,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11jQuery post數(shù)據(jù)至ashx實(shí)例詳解
這篇文章主要介紹了jQuery post數(shù)據(jù)至ashx實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2016-11-11Jquery 實(shí)現(xiàn)表格顏色交替變化鼠標(biāo)移過顏色變化實(shí)例
Jquery 實(shí)現(xiàn)表格顏色交替變化,點(diǎn)擊選中行,鼠標(biāo)移過顏色變化效果附演示代碼 ,喜歡的朋友可以參考下2013-08-08JQuery 簡(jiǎn)便實(shí)現(xiàn)頁面元素?cái)?shù)據(jù)驗(yàn)證功能
JQuery 簡(jiǎn)便實(shí)現(xiàn)頁面元素?cái)?shù)據(jù)驗(yàn)證功能...2007-03-03PHP結(jié)合jQuery實(shí)現(xiàn)紅藍(lán)投票功能特效
本文給大家分享的是jQuery + PHP+mysql完成的投票程序,功能不是太復(fù)雜,主要是效果非常不錯(cuò),有需要的小伙伴可以參考下2015-07-07