jQuery - 水平+垂直导航栏

时间:2014-01-23 10:22:53

标签: javascript jquery html css

我正在努力实现以下蓝图的结果:

Blueprints

可悲的是,我是JavaScript和jQuery的新手,所以我需要一些帮助。

这个想法是垂直导航/滑块​​,
跟随你的光标,
当悬停在水平导航栏链接上时,
显示子链接,如下拉菜单。

我不是要求你为我做全部工作, 但也许给我一些提示并告诉我如何开始?

HTML和CSS的实验小说

CODE:

HTML

  <section class="container">
  <div class="fs-nav-vr">
  <ul>
  <li>Linkki</li>
  <li>Hinkki</li>
  <li>Sinkki</li>
  </div>
  <div class="pusher"></div>
   <section class="sc-nav">
<div class="fs-nav">
<nav>
    <div onclick=" window.location = 'http://google.com'">
        <a >Linkki</a>
    </div><div>
        <a href="#">Hinkki</a>
    </div><div>
        <a href="#">Sinkki</a>
    </div>
</nav>
</div>

  </section>

</div>

CSS

.fs-nav-vr {
    display: block;
    top: 0;
    height: 100%;
    width: 10%;
    padding: 0;
    margin: 0;
    opacity: 0.6;
    z-index: 2;
    left: 15%;
    background: red;
    position: absolute;
}
.fs-nav {
    height: 15%;
    display: block;
    width: 100%;
    top: 65%;
    padding: 0;
    margin: 0;
    color: relative;
    text-align:center;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.17, rgb(61, 61, 61)), color-stop(0.66, rgb(87, 84, 87)));
    background-image: -o-linear-gradient(bottom, rgb(61, 61, 61) 17%, rgb(87, 84, 87) 66%);
    background-image: -moz-linear-gradient(bottom, rgb(61, 61, 61) 17%, rgb(87, 84, 87) 66%);
    background-image: -webkit-linear-gradient(bottom, rgb(61, 61, 61) 17%, rgb(87, 84, 87) 66%);
    background-image: -ms-linear-gradient(bottom, rgb(61, 61, 61) 17%, rgb(87, 84, 87) 66%);
    background-image: linear-gradient(to bottom, rgb(61, 61, 61, 0.7) 17%, rgb(87, 84, 87) 66%);
    opacity: 0.8;
    overflow: hidden;
}
.fs-nav nav div {
    display: inline-block;
    text-align:center;
    cursor: pointer;
    border: solid 1px gray;
    padding: 2%;
    margin: 0;
    font-size: 40px;
    background-color: #999999;
    -webkit-transition: background-color 0.2s ease-in-out;
    -moz-transition: background-color 0.2s ease-in-out;
    -ms-transition: background-color 0.2s ease-in-out;
    -o-transition: background-color 0.2s ease-in-out;
    transition: background-color 0.2s ease-in-out;
}

1 个答案:

答案 0 :(得分:1)

这应该有助于开始并理解你需要做什么

HTML

<div class="h-nav"> 

<div class="vert-nav-container">
<a class="link1" href=""> option 1 </a>
<a class="link2" href=""> option 2 </a>
<a class="link3" href=""> option 3 </a>

    <div class="v-nav">
        <ul style="margin-top:40px">
            <li>a</li>
            <li>b</li>
            <li>c</li>
        <ul>    
    </div>

</div>

的jQuery

$(".link1").mouseenter(function(){
     $(".v-nav").css({'left':'0px'})
});

$(".link2").mouseenter(function(){
     $(".v-nav").css({'left':'90px'})
});

$(".link3").mouseenter(function(){
    $(".v-nav").css({'left':'180px'})
});

对于您拥有鼠标事件的每个链接,您可以在其中添加新内容,例如为每个选项显示不同的链接集。

http://jsfiddle.net/4qdyK/36/