js 自定义个性下拉选择框示例


Posted in Javascript onAugust 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> 
<link type="text/css" rel="stylesheet" href="../css/statistics.css"/> 
<script src="../js/jquery.js"></script> 
<style type="text/css"> 
.dropdiv{ 
width: 177px; 
height: 16px; 
overflow: hidden; 
float: left; 
font-size: 13px; 
font-family: "微软雅黑"; 
position: relative; 
padding: 5px; 
} 
.drpdown{ 
width: 214px; 
height: 24px; 
font-size: 13px; 
font-family:"微软雅黑"; 
position: relative; 
border:none; 
padding-top:4px; 
background:url(../images/dropdown.png) repeat-x; 
} 
.drpdown:active{ 
width: 214px; 
height: 24px; 
font-size: 13px; 
font-family:"微软雅黑"; 
position: relative; 
border:none; 
padding-top:4px; 
background:url(../images/dropdown.png) repeat-x; 
} 
.droparrow{ 
width:27px; 
height:27px; 
background:url(../images/droparrow.png) no-repeat; 
float:right; 
} 
.droparrow:hover{ 
width:25px; 
height:25px; 
background:url(../images/droparrow.png) no-repeat; 
float:right; 
border:#F00 1px solid; 
} 
.dropmiandiv{ 
margin-left:40px; 
width:214px; 
border: 2px solid #aaaaaa; 
background:url(../images/dropdown.png) repeat-x; 
height: 26px; 
} 
.chooseItems{ 
border:#666 2px solid; 
} 
.chooseItems .chooseItem{ 
font-size: 13px; 
font-family: "微软雅黑"; 
padding: 5px; 
} 
.chooseItems .chooseItem:hover{ 
background:#09F; 
} 
</style> 
</head> <body> 
<div class="dropmiandiv" quest ="select1"> 
<div id ="select1" displayMember="-1" valueMember ="请选择" class="dropdiv">请选择</div> 
<div class="droparrow"></div> 
</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;"> 
<div id ="select2" displayMember="-1" valueMember ="请选择" class="dropdiv">请选择</div> 
<div class="droparrow"></div> 
</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"> 
$(".droparrow").click(function(e){ 
var quest = $(this).parent(); 
var questwidth = parseInt(quest.width()); 
var questheight = quest.height(); 
var left = quest.offset().left; 
var top = parseInt(quest.offset().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).hide(); 
}else{ 
$(selectsd).css({"left":left+"px","top":top+"px","width":questwidth+"px"}).show(); 
} 
}); 
$(".dropdiv").click(function(e){ 
var quest = $(this).parent(); 
var questwidth = parseInt(quest.width()); 
var questheight = quest.height(); 
var left = quest.offset().left; 
var top = parseInt(quest.offset().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).hide(); 
}else{ 
$(selectsd).css({"left":left+"px","top":top+"px","width":questwidth+"px"}).show(); 
} 
}); 
$(".chooseItem").click(function(e){ 
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.html(valueMember); 
parent.change(); 
} 
$(this).parent().hide(); 
}); 
$(".dropdiv").change(function(e){ 
alert($(this).attr("valueMember")); 
}); 
$(".dropmiandiv").mouseleave(function(e){ 
var quest = $(this).attr("quest"); 
$('.chooseItems[answer='+quest+']').hide(); 
}); 
$(".chooseItems").mouseenter(function(e){ 
$(this).show(); 
}); 
$(".chooseItems").mouseleave(function(e){ 
$(this).hide(); 
}); 
</script>
Javascript 相关文章推荐
Prototype使用指南之form.js
Jan 10 Javascript
jQuery 加上最后自己的验证
Nov 04 Javascript
jquery实现效果比较好的table选中行颜色
Mar 25 Javascript
jquery easyui 结合jsp简单展现table数据示例
Apr 18 Javascript
常用jQuery选择器总结
Jul 11 Javascript
JS 打印功能代码可实现打印预览、打印设置等
Oct 31 Javascript
jQuery中prevAll()方法用法实例
Jan 08 Javascript
jQuery简单实现日历的方法
May 04 Javascript
jquery淡入淡出效果简单实例
Jan 14 Javascript
javascript获取元素的计算样式
May 24 Javascript
layui多图上传实现删除功能的例子
Sep 23 Javascript
vue 使用外部JS与调用原生API操作示例
Dec 02 Javascript
JavaScript打印iframe内容示例代码
Aug 20 #Javascript
JQuery之focus函数使用介绍
Aug 20 #Javascript
html页面显示年月日时分秒和星期几的两种方式
Aug 20 #Javascript
网页中可关闭的漂浮窗口实现可自行调节
Aug 20 #Javascript
js判断选择的时间是否大于今天的代码
Aug 20 #Javascript
JQuery获取样式中的background-color颜色值的问题
Aug 20 #Javascript
jQuery制作仿腾讯web qq用户体验桌面
Aug 20 #Javascript
You might like
Joomla下利用configuration.php存储简单数据
2010/05/19 PHP
PHP实现今天是星期几的几种写法
2013/09/26 PHP
以文件形式缓存php变量的方法
2015/06/26 PHP
PHP实现适用于自定义的验证码类
2016/06/15 PHP
centos7上编译安装php7以php-fpm方式连接apache
2018/11/08 PHP
浅谈php常用的7大框架的优缺点
2020/07/20 PHP
JQuery扩展插件Validate 5添加自定义验证方法
2011/09/05 Javascript
JQuery节点元素属性操作方法
2015/06/11 Javascript
javascript中offset、client、scroll的属性总结
2015/08/13 Javascript
Ionic2系列之使用DeepLinker实现指定页面URL
2016/11/21 Javascript
javascript html5轻松实现拖动功能
2017/03/01 Javascript
javascript实现二叉树的代码
2017/06/08 Javascript
使用vue官方提供的模板vue-cli搭建一个helloWorld案例分析
2018/01/16 Javascript
js+html实现点名系统功能
2019/11/05 Javascript
Vue.extend 编程式插入组件的实现
2019/11/18 Javascript
原生js实现自定义难度的扫雷游戏
2021/01/22 Javascript
python实现比较两段文本不同之处的方法
2015/05/30 Python
Python编程实现的简单Web服务器示例
2017/06/22 Python
Python绘制的二项分布概率图示例
2018/08/22 Python
Python多继承原理与用法示例
2018/08/23 Python
Python3.5装饰器原理及应用实例详解
2019/04/30 Python
详解用python写一个抽奖程序
2019/05/10 Python
Python写捕鱼达人的游戏实现
2020/03/31 Python
html5中监听canvas内部元素点击事件的三种方法
2019/04/28 HTML / CSS
AmazeUI底部导航栏与分享按钮的示例代码
2020/08/18 HTML / CSS
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?用contains来区分是否有重复的对象。还是都不用
2013/07/30 面试题
商得四方公司面试题(gid+)
2014/04/30 面试题
网吧收银员岗位职责
2013/12/14 职场文书
优秀大学生职业生涯规划书
2014/02/27 职场文书
大学生两会学习心得体会
2014/03/10 职场文书
学生会宣传部部长竞选演讲稿
2014/04/25 职场文书
乡镇八一建军节活动方案
2014/08/24 职场文书
小程序实现筛子抽奖
2021/05/26 Javascript
详解Redis复制原理
2021/06/04 Redis
Python天气语音播报小助手
2021/09/25 Python
零基础学java之方法的定义与调用详解
2022/04/10 Java/Android