原生js实现下拉列表框

企鹅博客
企鹅博客
企鹅博客
30163
文章
0
评论
2020年9月14日14:50:53 评论 9 views 1815字阅读6分3秒

模仿
qq列表点击下拉,
js原生实现,
免费源码提供研究,拿去吧!关注PHP中文网给你更多好看的!

原生js实现下拉列表框

代码:

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>PHP中文网--下拉框</title>
<style>
ul , h2 { padding:0; margin:0; }
li { list-style:none; }
#list { width:240px; border:1px solid #333; margin:0 auto; }
#list .lis {}
#list h2 { height:30px; line-height:30px; text-indent:20px; background:yellow; color:#000; }
#list .active { background:orange; color:#000; }
#list ul { display:none; }
#list ul li { line-height:24px; border-bottom:1px solid #333; text-indent:24px; }
#list ul .hover { background:pink; }
</style>
<script>
window.onload = function (){
	var oUl = document.getElementById('list');
	var aH2 = oUl.getElementsByTagName('h2');
	var aUl = oUl.getElementsByTagName('ul');
	var aLi = null;
	var arrLi = [];
	for(var i=0;i<aH2.length;i++){
		aH2[i].index=i;
		aH2[i].onclick = function(){
			for(var i=0;i<aH2.length;i++){
				if(aH2[i] !=this){
					aUl[i].style.display='none';
					aH2[i].className='';
				}
			}
			if(this.className==''){
				aUl[this.index].style.display='block';
				this.className='active';
			}else{
				aUl[this.index].style.display='none';
				this.className='';
			}
		};
	}
	for(var i=0;i<aUl.length;i++){
		aLi = aUl[i].getElementsByTagName('li');
		for(var j=0;j<aLi.length;j++){
			arrLi.push(aLi[j]);
		}
	}
	for(var i=0;i<arrLi.length;i++){
		arrLi[i].onclick=function(){
			for(var i=0;i<arrLi.length;i++){
				if(arrLi[i] !=this){
					arrLi[i].className='';
				}
			}
			if(this.className==''){
				this.className='hover';
			}else{
				this.className='';
			}
		};
	}
};
</script>
</head>

<body>

<ul id="list" style="margin-top:50px;">
	<li class="lis">
  	<h2>我的好友</h2>
    <ul>
    	<li>a111</li>
    	<li>a222</li>
    	<li>a333</li>
    	<li>a444</li>
    </ul>
  </li>
	<li class="lis">
  	<h2>陌生人</h2>
    <ul>
    	<li>b111</li>
    	<li>b222</li>
    	<li>b333</li>
    	<li>b444</li>
    	<li>b555</li>
    </ul>
  </li>
	<li class="lis">
  	<h2>黑名单</h2>
    <ul>
    	<li>c111</li>
    	<li>c222</li>
    </ul>
  </li>
</ul>

</body>
</html>

免费拿去研究吧!更多好的源码尽在PHP中文网,关注我们给你好看哦~

相关推荐:

css,js骰子抽奖源码

html会动的小狗狗源码

js原声实现简单的微信聊天功能

以上就是原生js实现下拉列表框的详细内容,更多请html教程其它相关文章!

继续阅读
weinxin
欢迎加入中国站长博客之家
本站的所有资源都会上传分享到博客之家,希望大家互相学习交流进步。
angularJS的ng-bind-html指令详解 html教程

angularJS的ng-bind-html指令详解

这次给大家带来angularJS的ng-bind-html指令详解,使用angularJS的ng-bind-html指令的注意事项有哪些,下面就是实战案例,一起来看一下。 angular js的强大之...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: