自定义的一个简单时尚js下拉选择框


Posted in Javascript onNovember 20, 2013
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>statistics test</title> 
<script src="../js/jquery.js"></script> 
<style type="text/css"> 
.dropdiv{ 
width: 180px; 
height: 24px; 
overflow: hidden; 
float: left; 
font-size: 13px; 
font-family: "微软雅黑"; 
position: relative; 
padding: 0px 26px 0px 5px; 
border: solid 1px #cecece; 
background: url(../images/droparrow.png) 186px no-repeat; 
} 
.dropmiandiv{ 
margin-left: 40px; 
width: 213px; 
background: url(../images/dropdown.png) repeat-x; 
height: 27px; 
} 
.chooseItems{ 
border: solid 1px #cecece; 
} 
.chooseItems .chooseItem{ 
font-size: 13px; 
font-family: "微软雅黑"; 
padding: 5px; 
border-bottom: solid 1px #cecece; 
} 
.chooseItems .chooseItem:last-child{ 
border-bottom:none; 
} 
.chooseItems .chooseItem:hover{ 
background: #f2f2f2; 
} 
</style> 
</head> <body> 
<div class="dropmiandiv" quest ="select1"> 
<input type="text" readonly="readonly" id ="select1" displayMember="-1" valueMember ="请选择" class="dropdiv" value="请选择"/> 
</div> 
<div class="chooseItems" answer ="select1" style="display:none; position:absolute;"> 
<div class="chooseItem" displayMember="0" valueMember ="独立注册译员">独立注册译员</div> 
<div class="chooseItem" displayMember="1" valueMember ="供应商译员">供应商译员</div> 
<div class="chooseItem" displayMember="2" valueMember ="供应商">供应商</div> 
<div class="chooseItem" displayMember="3" valueMember ="代理商">代理商</div> 
</div> 
<div class="dropmiandiv" quest ="select2" style="position:absolute;top:200px;"> 
<input type="text" readonly="readonly" id ="select2" displayMember="-1" valueMember ="请选择" class="dropdiv" value="请选择"/> 
</div> 
<div class="chooseItems" answer ="select2" style="display:none; position:absolute;"> 
<div class="chooseItem" displayMember="0" valueMember ="独立注册译员">独立注册译员</div> 
<div class="chooseItem" displayMember="1" valueMember ="供应商译员">供应商译员</div> 
<div class="chooseItem" displayMember="2" valueMember ="供应商">供应商</div> 
<div class="chooseItem" displayMember="3" valueMember ="代理商">代理商</div> 
</div> 
</body> 
</html> 
<script type="text/javascript"> 
$(".dropdiv").click(function(e){ 
$(".chooseItems").slideUp(300); 
e.stopPropagation(); 
var quest = $(this).parent(); 
var questwidth = parseInt(quest.width())-2; 
var questheight = quest.height(); 
var left = quest.position().left+parseInt(quest.css("margin-left"))+parseInt(quest.css("padding-left")); 
var top = parseInt(quest.position().top)+parseInt(questheight)+4; 
var attrs = quest.attr("quest"); 
var selectsd = $('.chooseItems[answer='+attrs+']'); 
var selectsdHeight = selectsd.height(); 
if((top+selectsdHeight)>$(window).height()){ 
top = top - selectsdHeight - questheight-7; 
} 
if($(selectsd).is(":visible")){ 
$(selectsd).slideUp(300); 
}else{ 
$(selectsd).css({"left":left+"px","top":top+"px","width":questwidth+"px"}).slideDown(300); 
} 
}); 
$(".chooseItem").click(function(e){ 
e.stopPropagation(); 
var divhtml = $(this); 
var displayMember,valueMember; 
displayMember = divhtml.attr("displayMember"); 
valueMember = divhtml.attr("valueMember"); 
var attrs =$(this).parent().attr("answer"); 
var parent = $("#"+attrs); 
var olddisplayMember,oldvalueMember; 
olddisplayMember = parent.attr("displayMember"); 
oldvalueMember = parent.attr("valueMember"); 
if(olddisplayMember !=displayMember){ 
parent.attr("displayMember",displayMember); 
parent.attr("valueMember",valueMember); 
parent.val(valueMember); 
parent.change(); 
} 
$(this).parent().slideUp(300); 
}); 
$(document).click(function(e){ 
var target = $(e.target); 
if(target.closest(".chooseItems").length == 0){ 
$(".chooseItems").slideUp(300); 
} 
}); 
</script>

效果图
自定义的一个简单时尚js下拉选择框
Javascript 相关文章推荐
jQuery AnythingSlider滑动效果插件
Feb 07 Javascript
JQUERY的属性选择符和自定义选择符使用方法(二)
Apr 07 Javascript
ko knockoutjs动态属性绑定技巧应用
Nov 14 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
Mar 26 Javascript
jQuery筛选数组之grep、each、inArray、map的用法及遍历json对象
Jun 20 Javascript
jQuery插件passwordStrength密码强度指标详解
Jun 24 Javascript
js防阻塞加载的实现方法
Sep 09 Javascript
微信小程序之ES6与事项助手的功能实现
Nov 30 Javascript
Vue2实现组件props双向绑定
Dec 02 Javascript
javaScript手机号码校验工具类PhoneUtils详解
Dec 08 Javascript
JS关闭子窗口并且刷新上一个窗口的实现示例
Mar 10 Javascript
js实现星星打分效果
Jul 05 Javascript
jQuery对html元素取值与赋值的方法
Nov 20 #Javascript
客户端js判断文件类型和文件大小即限制上传大小
Nov 20 #Javascript
JS保留两位小数 四舍五入函数的小例子
Nov 20 #Javascript
使用js简单实现了tree树菜单
Nov 20 #Javascript
js 用CreateElement动态创建标签示例
Nov 20 #Javascript
JS实现字体选色板实例代码
Nov 20 #Javascript
jquery实现树形二级菜单实例代码
Nov 20 #Javascript
You might like
php中文本操作的类
2007/03/17 PHP
PHP中curl_setopt函数用法实例分析
2015/04/16 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
2015/06/29 PHP
php过滤所有的空白字符(空格、全角空格、换行等)
2015/10/27 PHP
PHP实现的简单异常处理类示例
2017/05/04 PHP
一个基于jquery的图片切换效果
2010/07/06 Javascript
JS高级笔记
2011/07/13 Javascript
JS中typeof与instanceof之间的区别总结
2013/11/14 Javascript
javascript+ajax实现产品页面加载信息
2015/07/09 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
jQuery的Cookie封装,与PHP交互的简单实现
2016/10/05 Javascript
微信小程序滑动选择器的实现代码
2018/08/10 Javascript
微信小程序非swiper组件实现的自定义伪3D轮播图效果示例
2018/12/11 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
2019/04/10 Javascript
jquery.pager.js实现分页效果
2019/07/29 jQuery
javascript+css实现俄罗斯方块小游戏
2020/06/28 Javascript
Python中使用bidict模块双向字典结构的奇技淫巧
2016/07/12 Python
Python实现的微信红包提醒功能示例
2019/08/22 Python
mac 上配置Pycharm连接远程服务器并实现使用远程服务器Python解释器的方法
2020/03/19 Python
在tensorflow以及keras安装目录查询操作(windows下)
2020/06/19 Python
HTML5中canvas中的beginPath()和closePath()的重要性
2018/08/24 HTML / CSS
HTML5: Web 标准最巨大的飞跃
2008/10/17 HTML / CSS
夏尔巴人登珠峰品牌:Sherpa Adventure Gear
2018/02/08 全球购物
超级英雄、电影和电视、乐队和音乐T恤:Loud Clothing
2019/09/01 全球购物
介绍下WebSphere的安全性
2013/01/31 面试题
英文版餐饮业求职信
2013/10/18 职场文书
工厂厂长岗位职责
2013/11/08 职场文书
办公室文员岗位职责范本
2014/06/12 职场文书
整顿机关作风心得体会
2014/09/10 职场文书
导师对论文的学术评语
2015/01/04 职场文书
天下第一关导游词
2015/02/06 职场文书
2015年财务经理工作总结
2015/05/13 职场文书
python基于turtle绘制几何图形
2021/06/15 Python
Spring中bean的生命周期之getSingleton方法
2021/06/30 Java/Android
python如何读取和存储dict()与.json格式文件
2022/06/25 Python
nginx配置指令之server_name的具体使用
2022/08/14 Servers