滑块不在firefox和chrome上工作

时间:2012-10-28 13:58:49

标签: javascript jquery

我为一个项目构建了一个简单的滑块。我在chrome和firefox中测试它并且它不起作用,但它可以正常工作IE10发布预览。 这是滑块http://jsfiddle.net/VhtWh/2/

的小提琴

这是滑块代码

$(document).ready(function() {

    // Let's make the first slide visible and hide the rest
    $('#homepage-slides li').css('top','0').hide();
    $('#homepage-slides li:first').addClass('slideActive').show().find('.slide-content').animate({left: '0', opacity: 1.0}, 800);

    // Find all of the slides
    var slides = $('#homepage-slides li');
    var current = 0;

    // Set up the slideshow
        $('#homepage-slider .arrow').click(function(){
            var li          = slides.eq(current);
            var nextIndex   = 0;

            // Depending on whether this is the next or previous
            // arrow, calculate the index of the next slide accordingly.

            if($(this).hasClass('slide-right')){
                nextIndex = current >= slides.length-1 ? 0 : current+1;
            } else {
                nextIndex = current <= 0 ? slides.length-1 : current-1;
            }

            var next = slides.eq(nextIndex);

            current = nextIndex;

            // Show next slide and slide/fade in the content
            next.addClass('slideActive').fadeIn('slow').find('.slide-content').animate({left: '0', opacity: 1.0}, 800);

            // Hide all other slides and slide/fade out the content
            li.removeClass('slideActive').fadeOut('slow').find('.slide-content').animate({left: '-2400', opacity: 0}, 800);

            // Hide next arrow after last slide
            if ( nextIndex >= slides.length-1 ) {
                $('#homepage-slider .arrow').addClass('hide');
            }
        });
});

PS:导航链接没有像chrome和firefox中的css那样突出显示,但在IE10中完美运行

1 个答案:

答案 0 :(得分:1)

您的z-index存在问题。箭头不在滑块的顶部。

避免将999用于z索引。他们没有帮助。使用像1,2,3这样的值,它会更有意义。

我更新了JSFiddle:http://jsfiddle.net/VhtWh/3/

现在,箭头为z-index: 3,滑块为z-index: 2

这是代码:

#homepage-slider {
  background: #050402;
  min-width: 940px;
  position: relative;
  min-height: 450px;
  z-index: 1;
}
#homepage-slider .slide-right,
#homepage-slider .slide-left {
  color: white;
  font-size: 14px;
  height: 23px;
  margin-top: -26px;
  opacity: 0.7;
  padding: 63px 10px 5px;
  position: absolute;
  text-align: center;
  text-transform: uppercase;
  top: 50%;
  width: 52px;
  z-index: 3;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
}
#homepage-slider .slide-right {
  right: 30px;
  background: url(../../img/left.png) no-repeat scroll 10px 10px rgba(0, 0, 0, 0.4);
}
#homepage-slider .slide-right:hover {
  cursor: pointer;
  opacity: 1.0;
}
#homepage-slider .slide-left {
  left: 20px;
  display: none;
}
#homepage-slider #homepage-slides {
  height: 450px;
  list-style: none;
  margin: 0;
  min-width: 940px;
  position: relative;
  z-index: 2;
}
#homepage-slider #homepage-slides li {
  margin: 0;
  min-width: 940px;
  width: 100%;
  height: 336px;
  z-index: 2;
  position: absolute;
  padding: 118px 0 0;
}
#homepage-slider #homepage-slides li .span7 {
  position: relative;
  height: 336px;
}
#homepage-slider #homepage-slides li .slide-content {
  position: absolute;
}
#homepage-slider #homepage-slides li .slide-content h1 {
  font-size: 48px;
  color: white;
  margin: 21px;
}
#homepage-slider #homepage-slides li .slide-content p {
  color: #999999;
  font-size: 30px;
  letter-spacing: -0.015em;
  letter-spacing: -1px;
  line-height: 36px;
  margin-bottom: 26px;
}​