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 jsonp 使用示例代码
Aug 12 Javascript
javascript+mapbar实现地图定位
Apr 09 Javascript
js将json格式内容转换成对象的方法
Nov 01 Javascript
js时间比较示例分享(日期比较)
Mar 05 Javascript
常用的jQuery前端技巧收集
Dec 24 Javascript
javascript去除空格方法小结
May 21 Javascript
JavaScript组件开发完整示例
Dec 15 Javascript
深入理解JavaScript内置函数
Jun 03 Javascript
layui选项卡效果实现代码
May 19 Javascript
layui table 参数设置方法
Aug 14 Javascript
webpack 从指定入口文件中提取公共文件的方法
Nov 13 Javascript
原生javascript的ajax请求及后台PHP响应操作示例
Feb 24 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
php获取数组元素中头一个数组元素值的实现方法
2014/12/20 PHP
php打包压缩文件之ZipArchive方法用法分析
2016/04/30 PHP
javascript编程起步(第五课)
2007/02/27 Javascript
用JavaScrpt实现文件夹简单轻松加密的实现方法图文
2008/09/08 Javascript
JS面向对象编程之对象使用分析
2010/08/19 Javascript
jquery怎样实现ajax联动框(二)
2013/03/08 Javascript
jquery将一个表单序列化为一个对象的方法
2013/12/02 Javascript
理解javascript定时器中的单线程
2016/02/23 Javascript
深入理解JavaScript中的for循环
2017/02/07 Javascript
Angular在一个页面中使用两个ng-app的方法(二)
2017/02/20 Javascript
详解自定义ajax支持跨域组件封装
2018/02/08 Javascript
JS面试题大坑之隐式类型转换实例代码
2018/10/14 Javascript
Vuex mutitons和actions初使用详解
2019/03/04 Javascript
详解如何模拟实现node中的Events模块(通俗易懂版)
2019/04/15 Javascript
p5.js码绘“跳动的小正方形”的实现代码
2019/10/22 Javascript
jQuery实现form表单基于ajax无刷新提交方法实例代码
2019/11/04 jQuery
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
redux处理异步action解决方案
2020/03/22 Javascript
[09:59]DOTA2-DPC中国联赛2月7日Recap集锦
2021/03/11 DOTA
学习python之编写简单乘法口诀表实现代码
2016/02/27 Python
Python 迭代器与生成器实例详解
2017/05/18 Python
python操作excel的包(openpyxl、xlsxwriter)
2018/06/11 Python
python实现文件的备份流程详解
2019/06/18 Python
Python参数类型以及常见的坑详解
2019/07/08 Python
Python实现的企业粉丝抽奖功能示例
2019/07/26 Python
django queryset 去重 .distinct()说明
2020/05/19 Python
PyQt5实现仿QQ贴边隐藏功能的实例代码
2020/05/24 Python
Python requests接口测试实现代码
2020/09/08 Python
伦敦时尚生活的缩影:LN-CC
2017/01/24 全球购物
Lands’ End英国官方网站:高质量男女服装
2017/10/07 全球购物
澳大利亚在线时尚精品店:Hello Molly
2018/02/26 全球购物
廉价连衣裙和婚纱礼服在线销售:Tbdress
2019/02/28 全球购物
高中毕业自我鉴定
2013/12/22 职场文书
初一地理教学反思
2014/01/16 职场文书
军训感想500字
2014/02/20 职场文书
Django实现聊天机器人
2021/05/31 Python