自定义的一个简单时尚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 相关文章推荐
safari,opera嵌入iframe页面cookie读取问题解决方法
Jun 23 Javascript
Javascript之旅 对象的原型链之由来
Aug 25 Javascript
jquery 删除cookie失效的解决方法
Nov 12 Javascript
js 获取、清空input type=&quot;file&quot;的值示例代码
Feb 19 Javascript
js实现符合国情的日期插件详解
Jan 19 Javascript
使用JS 插件qrcode.js生成二维码功能
Feb 20 Javascript
vue不通过路由直接获取url中参数的方法示例
Aug 24 Javascript
JS实现延迟隐藏功能的方法(类似QQ头像鼠标放上展示信息)
Dec 28 Javascript
vue使用vue-i18n实现国际化的实现代码
Apr 08 Javascript
Vuejs通过拖动改变元素宽度实现自适应
Sep 02 Javascript
vue 如何使用递归组件
Oct 23 Javascript
vue实现拖拽交换位置
Apr 07 Vue.js
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中去除换行解决办法小结(PHP_EOL)
2011/11/27 PHP
PHP rawurlencode与urlencode函数的深入分析
2013/06/08 PHP
php顺序查找和二分查找示例
2014/03/27 PHP
关于文本限制字数的js代码
2007/04/02 Javascript
基于datagrid框架的查询
2013/04/08 Javascript
谷歌浏览器不支持showModalDialog模态对话框的解决方法
2014/09/22 Javascript
javascript显示中文日期的方法
2015/06/18 Javascript
详解jQuery事件
2017/01/13 Javascript
手把手教你 CKEDITOR 4 实现Dialog 内嵌 IFrame操作详解
2019/06/18 Javascript
js实现省级联动(数据结构优化)
2020/07/17 Javascript
Python中使用中文的方法
2011/02/19 Python
python实现定时播放mp3
2015/03/29 Python
编写Python脚本来实现最简单的FTP下载的教程
2015/05/04 Python
Python2与python3中 for 循环语句基础与实例分析
2017/11/20 Python
Python绘制3D图形
2018/05/03 Python
使用OpCode绕过Python沙箱的方法详解
2019/09/03 Python
Django框架模板用法入门教程
2019/11/04 Python
Python多线程模块Threading用法示例小结
2019/11/09 Python
使用pytorch实现可视化中间层的结果
2019/12/30 Python
python 装饰器功能与用法案例详解
2020/03/06 Python
Django 再谈一谈json序列化
2020/03/16 Python
css3通过scale()、rotate()实现放大、旋转
2020/03/19 HTML / CSS
HTML5 标准将把互联网视频扔回到黑暗时代
2010/02/10 HTML / CSS
波兰香水和化妆品购物网站:Notino.pl
2017/11/07 全球购物
UNIX文件系统常用命令
2012/05/25 面试题
仪器仪表检测毕业生自荐信
2013/10/31 职场文书
餐厅筹备计划书
2014/04/25 职场文书
减负增效提质方案
2014/05/23 职场文书
公司周年庆活动方案
2014/08/25 职场文书
四风问题个人剖析材料
2014/10/07 职场文书
计算机实训报告范文
2014/11/05 职场文书
三八红旗手事迹材料
2014/12/26 职场文书
春秋淹城导游词
2015/02/11 职场文书
2015年学校党建工作总结
2015/05/19 职场文书
2016反腐倡廉警示教育心得体会
2016/01/13 职场文书
创业计划书之DIY自助厨房
2019/09/06 职场文书