js模拟select下拉菜单控件的代码


Posted in Javascript onMay 08, 2013
<!DOCTYPE html>
 <html>
 <head>
 <script src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
 <meta charset=utf-8 />
 <title>js模拟select</title>
 </head>
    <style>
   *{ margin:0; padding:0;}
   li{ list-style:none;}
   body{ font:12px "宋体"; color:#666;}
   .select_down{ margin:100px auto; position:relative; width:600px; min-height:200px; height:auto!important; height:200px; border:1px solid #ccc; padding:20px; border-radius: 8px}
   .select_down dt{float:left;width:134px;position:relative;margin-right:5px;display:inline;}
   .select_down h3{color: #919191; font-size:12px;font-weight: normal;border:1px solid #e5e5e5;height:18px;background:#fbfbfb;line-height: 18px;text-indent:8px;}
   .select_down ul{width: 132px;border: 1px solid #e5e5e5;background:#fbfbfb;position: absolute;top: 18px;left: 0;
 z-index: 1;text-indent:8px;display:none;}
 .select_down ul li{height:22px;line-height: 22px;cursor:pointer;}
 .select_down ul li.hover{background:#f2f2f2;}
  .select_down dt a{background:url('https://3water.com/hxh-hua/478335/o_select.jpg') no-repeat;position:absolute;width:18px;height:18px;top:1px;right:1px; }
   </style>
 <body>
   <div class="select_down" id="sel">
           <dl>
             <dt>
                 <h3>select选择</h3>
                 <a href="javascript:;"></a>
                 <ul>
                     <li>jq的select模拟1</li>
                     <li>jq的select模拟2</li>
                     <li>jq的select模拟3</li>
                 </ul>
             </dt>
             <dt>
                 <h3>select选择2</h3>
                 <a href="javascript:;"></a>
                 <ul>
                     <li>jq的select模拟11</li>
                     <li>jq的select模拟22</li>
                     <li>jq的select模拟31</li>
                 </ul>
             </dt>         </dl>
 </div>
   <script>
     window.onload=function(){
     var oflink = document.getElementById('sel');
     var aDt = oflink.getElementsByTagName('dt');
     var aUl = oflink.getElementsByTagName('ul');
     var aH3= oflink.getElementsByTagName('h3');
     for(var i=0;i<aDt.length;i++){
         aDt[i].index = i;
         aDt[i].onclick = function(ev){
             var ev = ev || window.event;
             var This = this;
             for(var i=0;i<aUl.length;i++){
                 aUl[i].style.display = 'none';
             }
             aUl[this.index].style.display = 'block';
             document.onclick = function(){
                 aUl[This.index].style.display = 'none';
             };
             ev.cancelBubble = true;
         };
     }
     for(var i=0;i<aUl.length;i++){
         aUl[i].index = i;
         (function(ul){
             var iLi = ul.getElementsByTagName('li');
             for(var i=0;i<iLi.length;i++){
                 iLi[i].onmouseover = function(){
                     this.className = 'hover';
                 };
                 iLi[i].onmouseout = function(){
                     this.className = '';
                 };
                 iLi[i].onclick = function(ev){
                     var ev = ev || window.event;
                     aH3[this.parentNode.index].innerHTML = this.innerHTML;
                     ev.cancelBubble = true;
                     this.parentNode.style.display = 'none';
                 };
             }
         })(aUl[i]);
     }
 }
   </script>
 </body>
 </html>
Javascript 相关文章推荐
jQuery 版元素拖拽原型代码
Apr 25 Javascript
ASP.NET jQuery 实例9  通过控件hyperlink实现返回顶部效果
Feb 03 Javascript
动态加载JS文件的三种方法
Nov 08 Javascript
jquery插件tooltipv顶部淡入淡出效果使用示例
Dec 05 Javascript
jQuery AjaxUpload 上传图片代码
Feb 02 Javascript
JQuery 传送中文乱码问题的简单解决办法
May 24 Javascript
jQuery使用方法
Feb 04 Javascript
jQuery实现文章图片弹出放大效果
Apr 06 jQuery
详解基于angular-cli配置代理解决跨域请求问题
Jul 05 Javascript
JS实现可切换图片的幻灯切换效果示例
May 24 Javascript
JavaScript迭代器的含义及用法
Jun 21 Javascript
js中script的上下放置区别,Dom的增删改创建操作实例分析
Dec 16 Javascript
js工具方法弹出蒙版
May 08 #Javascript
基于JavaScript 声明全局变量的三种方式详解
May 07 #Javascript
你必须知道的JavaScript 变量命名规则详解
May 07 #Javascript
你必须知道的JavaScript 中字符串连接的性能的一些问题
May 07 #Javascript
基于JavaScript实现继承机制之构造函数方法对象冒充的使用详解
May 07 #Javascript
基于JavaScript实现继承机制之调用call()与apply()的方法详解
May 07 #Javascript
JS中的substring和substr函数的区别说明
May 07 #Javascript
You might like
重置版战役片段
2020/04/09 魔兽争霸
php将数据库中所有内容生成静态html文档的代码
2010/04/12 PHP
PHP+Ajax检测用户名或邮件注册时是否已经存在实例教程
2014/08/23 PHP
php限制上传文件类型并保存上传文件的方法
2015/03/13 PHP
深入理解PHP之源码目录结构与功能说明
2016/06/01 PHP
PHP 等比例缩放图片详解及实例代码
2016/09/18 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
PHP面向对象程序设计之多态性的应用示例
2018/12/19 PHP
JavaScript 密码强度判断代码
2009/09/05 Javascript
解析window.open的使用方法总结
2013/06/19 Javascript
js history对象简单实现返回和前进
2013/10/30 Javascript
深入理解Javascript动态方法调用与参数修改的问题
2013/12/10 Javascript
js购物车实现思路及代码(个人感觉不错)
2013/12/23 Javascript
用js一次改变多个input的readonly属性值的方法
2014/06/11 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
2017/04/27 jQuery
详解从Vue.js源码看异步更新DOM策略及nextTick
2017/10/11 Javascript
Nodejs模块载入运行原理
2018/02/23 NodeJs
vue组件中使用props传递数据的实例详解
2018/04/08 Javascript
Vue列表如何实现滚动到指定位置样式改变效果
2020/05/09 Javascript
在vue中实现禁止屏幕滚动,禁止屏幕滑动
2020/07/22 Javascript
vue video和vue-video-player实现视频铺满教程
2020/10/30 Javascript
[02:32]DOTA2完美大师赛场馆静安体育中心观赛全攻略
2017/11/08 DOTA
pycharm 使用心得(八)如何调用另一文件中的函数
2014/06/06 Python
Python实现拼接多张图片的方法
2014/12/01 Python
Python的Django框架中if标签的相关使用
2015/07/15 Python
Python print不能立即打印的解决方式
2020/02/19 Python
浅谈python输出列表元素的所有排列形式
2020/02/26 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
澳大利亚最受欢迎的美发和美容在线商店:Catwalk
2018/12/12 全球购物
Seavenger官网:潜水服、浮潜、靴子和袜子
2020/03/05 全球购物
JPA的特点
2014/10/25 面试题
工厂厂长岗位职责
2013/11/08 职场文书
十八届三中全会报告学习材料
2014/02/17 职场文书
人民教师的自我评价分享
2014/02/21 职场文书
2014乡镇班子个人对照检查材料思想汇报
2014/09/26 职场文书
幼儿园感恩节活动方案2014
2014/10/11 职场文书