自定义的一个简单时尚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实现给指定元素的后面追加内容
Apr 10 Javascript
javascript写的一个模拟阅读小说的程序
Apr 04 Javascript
jquery 为a标签绑定click事件示例代码
Jun 23 Javascript
javascript修改图片src的方法
Jan 27 Javascript
jQuery点缩略图弹出层显示大图片
Feb 13 Javascript
JavaScript编写带旋转+线条干扰的验证码脚本实例
May 30 Javascript
用js读写cookie的简单方法(推荐)
Aug 08 Javascript
jQuery快速高效制作网页交互特效
Feb 24 Javascript
vue模仿网易云音乐的单页面应用
Apr 24 Javascript
jquery实现下载图片功能
Jul 18 jQuery
ES6中Set和Map用法实例详解
Mar 02 Javascript
js实现翻牌小游戏
Jul 31 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发送邮件类代码附详细说明
2008/07/10 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
2009/12/29 PHP
PHP下打开URL地址的几种方法小结
2010/05/16 PHP
php常用表单验证类用法实例
2015/06/18 PHP
使用PHPExcel导出Excel表
2018/09/08 PHP
PHP实现SMTP邮件的发送实例
2018/09/27 PHP
让任务管理器中的CPU跳舞的js代码
2008/11/01 Javascript
Jquery从头学起第四讲 jquery入门教程
2010/08/01 Javascript
JS 实现导航栏悬停效果(续2)
2013/09/24 Javascript
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
javascript中的变量作用域以及变量提升详细介绍
2013/10/24 Javascript
js判断浏览器类型为ie6时不执行
2014/06/15 Javascript
用js编写的简单的计算器代码程序
2015/08/04 Javascript
js如何实现点击标签文字,文字在文本框出现
2015/08/05 Javascript
实例剖析AngularJS框架中数据的双向绑定运用
2016/03/04 Javascript
JavaScript实现刷新不重记的倒计时
2016/08/10 Javascript
详解照片瀑布流效果(js,jquery分别实现与知识点总结)
2017/01/01 Javascript
Bootstrap禁用响应式布局的实现方法
2017/03/09 Javascript
在vue项目中使用Jquery-contextmenu插件的步骤讲解
2019/01/27 jQuery
详解webpack编译速度提升之DllPlugin
2019/02/05 Javascript
vue中监听返回键问题
2019/08/28 Javascript
js动态添加带圆圈序号列表的实例代码
2021/02/18 Javascript
Python ORM框架SQLAlchemy学习笔记之数据查询实例
2014/06/10 Python
使用python实现tcp自动重连
2017/07/02 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
python爬虫之快速对js内容进行破解
2019/07/09 Python
pyinstaller参数介绍以及总结详解
2019/07/12 Python
python关于调用函数外的变量实例
2019/12/26 Python
详解Python openpyxl库的基本应用
2021/02/26 Python
澳大利亚领先的武术用品和健身器材供应商:SMAI
2019/03/24 全球购物
美国名表在线商城:Ashford(支持中文)
2019/09/24 全球购物
房屋买卖协议书范本
2014/04/10 职场文书
工商行政管理专业求职书
2014/05/23 职场文书
小学生表扬稿范文
2015/05/05 职场文书
投诉信范文
2015/07/02 职场文书
给学校的建议书400字
2015/09/14 职场文书