自定义的一个简单时尚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 相关文章推荐
JS验证日期的格式YYYY-mm-dd 具体实现
Jun 29 Javascript
javascript对下拉列表框(select)的操作实例讲解
Nov 29 Javascript
对table和ul实现js分页示例分享
Feb 24 Javascript
JS 打印功能代码可实现打印预览、打印设置等
Oct 31 Javascript
深入剖析JavaScript编程中的对象概念
Oct 21 Javascript
jQuery实现的tab标签切换效果示例
Sep 05 Javascript
AngularJS ngModel实现指令与输入直接的数据通信
Sep 21 Javascript
学习vue.js中class与style绑定
Dec 03 Javascript
JS瀑布流实现方法实例分析
Dec 19 Javascript
JavaScript定义函数_动力节点Java学院整理
Jun 27 Javascript
vue源码学习之Object.defineProperty对象属性监听
May 30 Javascript
AngularJS 多指令Scope问题的解决
Oct 25 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
PHP6 先修班 JSON实例代码
2008/08/23 PHP
php警告Creating default object from empty value 问题的解决方法
2014/04/02 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
thinkPHP实现的省市区三级联动功能示例
2017/05/05 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
2017/11/17 PHP
利用404错误页面实现UrlRewrite的实现代码
2008/08/20 Javascript
解析Jquery的LigerUI如何实现文件上传
2013/07/09 Javascript
js判断字符长度以及中英文数字等
2013/12/31 Javascript
基于jquery实现最简单的选项卡切换效果
2016/05/08 Javascript
JS获取复选框的值,并传递到后台的实现方法
2016/05/30 Javascript
聊一聊JS中this的指向问题
2016/06/17 Javascript
JS实现显示带倒影的图片横排居中放大展示特效实例【测试可用】
2016/08/23 Javascript
JavaScript学习笔记--常用的互动方法
2016/12/07 Javascript
js正则表达式验证表单【完整版】
2017/03/06 Javascript
vue实现app页面切换动画效果实例
2017/05/23 Javascript
node.js-v6新版安装具体步骤(分享)
2017/09/06 Javascript
详解如何在Angular优雅编写HTTP请求
2018/12/05 Javascript
解决nuxt页面中mounted、created、watch执行两遍的问题
2020/11/05 Javascript
python实现的防DDoS脚本
2011/02/08 Python
Python写的贪吃蛇游戏例子
2014/06/16 Python
Python实现的生成自我描述脚本分享(很有意思的程序)
2014/07/18 Python
跟老齐学Python之变量和参数
2014/10/10 Python
python实现折半查找和归并排序算法
2017/04/14 Python
Jupyter安装nbextensions,启动提示没有nbextensions库
2020/04/23 Python
python 反编译exe文件为py文件的实例代码
2019/06/27 Python
Python字符串中添加、插入特定字符的方法
2019/09/10 Python
Python数据结构dict常用操作代码实例
2020/03/12 Python
如何用 Python 制作一个迷宫游戏
2021/02/25 Python
百思买美国官网:Best Buy
2016/07/28 全球购物
文件中有一组整数,要求排序后输出到另一个文件中
2012/01/04 面试题
SQL Server提供的3种恢复模型都是什么? 有什么区别?
2012/05/13 面试题
WEB控件及HTML服务端控件能否调用客户端方法?如果能,请解释如何调用?
2015/08/25 面试题
文员个人求职自荐信
2013/09/21 职场文书
中国梦主题教育活动总结
2014/05/05 职场文书
社区务虚会发言材料
2014/10/20 职场文书
Html5同时支持多端sdk的小技巧
2021/11/17 HTML / CSS