• jQuery:两个样式下拉菜单(click hover)


    一直都很喜欢下拉菜单,因为这样可以导航到更多的页面,给访问者一目了然的感觉。

    之前在公司的网站上就是用的下拉菜单导航栏的方式进行导航,当时是使用了li:hover的方式通过鼠标移动到li上,显示出li下的ul。而在ie6中则使用javascript修复li:hover。这样做出来是没有动态的效果,下拉菜单一下子就凭空出现了。

    运用jQuery库制作下拉菜单的好处就是可以做出各种不同的动态效果,我今天讲解的是运用slideDown()和slideUp()函数实现的卷页效果。

    说明:第一个导航#nav1是点击后出现下拉菜单,而第二个导航#nav2是鼠标移动到上面后出现导航。(样式只为效果,没有美化,望见谅)

    1.html代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    
    <ul class="nav" id="nav1">
        	<li>点击方式下拉菜单:click</li>
        	<li><a href="#">首页</a></li>
            <li><a href="#">关于</a></li>
            <li><a href="#">技术</a>
            	<ul class="subnav">
                	<li><a href="#">wordpress</a></li>
                    <li><a href="#">php</a></li>
                    <li><a href="#">jQuery</a></li>
                    <li><a href="#">CSS</a></li>
                </ul>
            </li>
            <li><a href="#">影视</a>
            	<ul class="subnav">
                	<li><a href="#">电视剧</a></li>
                    <li><a href="#">电影</a></li>
                    <li><a href="#">舞台剧</a></li>
                </ul>
            </li>
            <li><a href="#">联系</a></li>
        </ul>
     
        <ul class="nav" id="nav2">
        	<li>移动方式下拉菜单:hover</li>
        	<li><a href="#">首页</a></li>
            <li><a href="#">关于</a></li>
            <li><a href="#">技术</a>
            	<ul class="subnav">
                	<li><a href="#">wordpress</a></li>
                    <li><a href="#">php</a></li>
                    <li><a href="#">jQuery</a></li>
                    <li><a href="#">CSS</a></li>
                </ul>
            </li>
            <li><a href="#">影视</a>
            	<ul class="subnav">
                	<li><a href="#">电视剧</a></li>
                    <li><a href="#">电影</a></li>
                    <li><a href="#">舞台剧</a></li>
                </ul>
            </li>
            <li><a href="#">联系</a></li>
        </ul>

    2. CSS源码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    * { margin:0; padding:0;}
    body { font:14px '宋体';}
    li { list-style:none;}
    a { text-decoration:none;}
    a:hover { text-decoration:underline;}
     
    #nav1 { margin-bottom:200px;}
     
    .nav { margin:10px auto; width:500px; background:#333; height:35px; padding:0 10px; color:#F60;}
    .nav li { float:left; padding-right:10px; text-align:center; position:relative; height:35px; line-height:35px;}
    .nav li a { padding:0 10px; height:35px; line-height:35px; display:block; color:#fff; float:left;}
     
    .nav li span { float:left; width:17px; height:35px; background:url(subnav_btn.gif) no-repeat center top;}
    .nav li span.subhover { background-position:center bottom; cursor:pointer;}
     
    ul.subnav { display:none; float:left; position:absolute; top:35px; left:-20px; width:100px; background:#666;}
    ul.subnav li { padding:0; clear:both; width:100px;}

    3. jQuery代码:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    $(document).ready(function() {
    	$('<span></span>').insertBefore($('.subnav'));
     
    	//鼠标点击向下箭头
    	$('#nav1 li span').hover(function() {
    		$(this).addClass('subhover');
    		$(this).parent().hover(function() {
    		}, function() {
    			$(this).parent().find('ul.subnav').slideUp('fast');
    		});
    	}, function() {
    		$(this).removeClass('subhover');
    	}).click(function() {
    		$(this).parent().find('ul.subnav').slideDown('slow');
    	});
     
    	// 鼠标移动到含有下拉菜单的li标签上时
    	$('#nav2 li').hover(function() {
    		$(this).find('span').addClass('subhover').end()
    			   .find('ul.subnav').slideDown('slow');
    	}, function() {
    		$(this).find('span').removeClass('subhover').end()
    			   .find('ul.subnav').slideUp('fast');
    	});
    });
  • 相关阅读:
    tiny4412 硬件解码
    orb slam2 双目摄像头
    hi3516a arm-hisiv300-linux-gcc jrtplib交叉编译
    第12章_异常
    第10章_内部类:
    IO流深入总结
    实现对存放了Map集合的ArrayList的排序(按照map中某个字段比较)
    UML各图用处

    File类:
  • 原文地址:https://www.cnblogs.com/top5/p/1767538.html
Copyright © 2020-2023  润新知