国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

基于jquery的用dl模擬實現可自定義樣式的SELECT下拉列表(已封裝)

2019-11-21 00:09:17
字體:
來源:轉載
供稿:網友
具體思路就不說了,比較常規, 代碼中也有注釋. 使用方法也不費話了, 就是一個簡單的全局函數封裝, 不懂的看下源碼中注釋或Google .
另外, 有興趣的朋友,可以嘗試在本插件基礎上改一個可輸入的下拉列表. 思路差不多,哈.

演示及代碼:  演示代碼 代碼下載
運行代碼:

[Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]


核心代碼:
復制代碼 代碼如下:

;(function($){
$.fn.extend({
iSelect: function(options){
var iset = {
name: $('.selectitem'), //容器
select: $('.selectitem>dl'), //dl列表
dropCss: 'drop', //收藏狀態dt的樣式
shrinkCss: 'shrink', //展開狀態dt的樣式
hoverCss: 'hover', //鼠標劃過dd時的樣式
clearTime: 100, //允許用戶快速劃過不觸發的時間(ms)
dropTime: 100, //展開時間(ms)
shrinkTime: 100 //收縮時間(ms)
}
options = options || {};
$.extend(iset, options);
var mainHeight = iset.name.height();//容器高度
var selectHeight = iset.select.height(); //dl實際高度
var curTxt = iset.select.find('dt').html(); //dt默認html內容
var self = null;
var hoverElem = null; //避免用戶快速劃過時觸發事件
iset.name.each(function(){
$(this).hover(function(){
self = this;
hoverElem = setTimeout(function(){
$(self).stop(true, false).animate({ //鼠標劃過時,展開dl
height: selectHeight
}, iset.dropTime);
if ($(self).find('dt').html() == curTxt) { //判斷是否有選擇下拉列表,若無則改變dt樣式
$(self).find('dt').attr('class', iset.dropCss);
}
//dd的鼠標事件
$(self).find('dd').mouseover(function(){
$(this).addClass(iset.hoverCss).siblings().removeClass(iset.hoverCss);
}).mousedown(function(){ //鼠標點擊時取值并賦給dt
$(self).find('dt').html($(this).html()).attr('class', $(this).attr('class'));
$(self).stop(true, false).animate({
height: mainHeight
}, iset.shrinkTime);
}).removeClass(iset.hoverCss);
}, iset.clearTime);
}, function(){
//鼠標移出后觸發的事件
clearTimeout(hoverElem);
$(self).stop(true, false).animate({
height: mainHeight
}, iset.shrinkTime);
if ($(self).find('dt').html() == curTxt) {
$(self).find('dt').attr('class', iset.shrinkCss);
}
});
})
}
})
})(jQuery);
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 萝北县| 安达市| 延寿县| 余江县| 精河县| 北川| 惠来县| 定边县| 左权县| 阿拉善左旗| 辉县市| 深水埗区| 龙游县| 翁牛特旗| 北川| 平湖市| 克拉玛依市| 壶关县| 叙永县| 兴安盟| 华蓥市| 车险| 新建县| 丰都县| 巧家县| 祁连县| 洮南市| 永嘉县| 浦城县| 百色市| 贺州市| 正蓝旗| 彭山县| 南丰县| 岚皋县| 岚皋县| 卢龙县| 突泉县| 昭苏县| 沾益县| 宝鸡市|