Панель навигации JQuery скрыта за слайд-шоу JQuery - PullRequest
1 голос
/ 16 июля 2011

У меня есть раскрывающийся список JQuery, который скрывается за слайд-шоу JQuery прямо под ним, здесь .

Мне нужно, чтобы раскрывающийся список был сверху ... Я пробовал z-index безрезультатно.

Судя по исследованию, это довольно распространенная проблема ... может кто-нибудь помочь?

Код:

#nav {
width:800px;
margin:0px auto 0px;
height:25px;
}

#nav ul {
height:25px;
margin:0 0px 0 0;
padding:0;
list-style:none;
}

#nav ul li {
background:#76bf43;
padding:5px 0px 0px 0px;
margin:0 10px 0 0;
color:#ffffff;
border-top-left-radius: 5px;
border-top-right-radius: 5px;
width:100px;
text-align:center;
height:20px;
float:left;
}

#nav ul li:hover {
cursor:pointer;
}

#nav ul li ul {
margin:0;
padding:0;
}

#nav ul li ul li {
padding:0;
margin:0;
border-top-left-radius: 0px;
border-top-right-radius: 0px;
height:25px;
}



<link rel="stylesheet" type="text/css" href="aaa-styles.css" />

<script src="jq.js"></script>

<script src="jquery.easing.1.3.js"></script>
<script src="jquery.timer.js"></script>
<script src="image-rotator.js"></script>



<script src="hoverIntent.js"></script> 
<script src="superfish.js"></script> 


<script> 

$(document).ready(function(){ 
    $("ul.sf-menu").superfish(); 
}); 

</script>


</head>



<body>

<script>
$(document).ready(function(){

//This keeps track of the slideshow's current location
var current_panel = 1;
//Controlling the duration of animation by variable will simplify changes
var animation_duration = 2500;

$.timer(6000, function (timer) {
    //Determine the current location, and transition to next panel
    switch(current_panel){
        case 1:
            $("#slideshow").stop().animate({left: "-800px", top: "0px"}, {easing: 'easeOutBack', duration: animation_duration});
            current_panel = 2;
        break;
        case 2:
            $("#slideshow").stop().animate({left: "0px", top: "-210px"}, {easing: 'easeOutBack', duration: animation_duration});
            current_panel = 3;
        break;
        case 3:
            $("#slideshow").stop().animate({left: "-800px", top: "-210px"}, {easing: 'easeOutBack', duration: animation_duration});
            current_panel = 4;
        break;
        case 4:
            $("#slideshow").stop().animate({left: "0px", top: "0px"}, {easing: 'easeOutBack', duration: animation_duration});
            current_panel = 1;
        break;
        timer.reset(12000);
    }
});

});
</script>

Ответы [ 2 ]

1 голос
/ 16 июля 2011

Я могу только догадываться, что вы пытались z-index не на том элементе.Попробуйте.

#nav {
    position: relative;
    z-index: 40000;
}

Вы должны найти, что это решит вашу проблему.

0 голосов
/ 16 июля 2011

для #nav ul добавить position:relative;z-index:1;

z-index всегда применяется к позиционируемым элементам, о чем нам сообщает документация CSS.

Подробнее здесь .

...