开发者

Opacity in rotating slider changes opacity in Chrome OSX, but not in Windows

In the OS X version of Chrome, the image opacity goes up and down. This doesn't happen in the Windows version. What can I do to fix it? I do NOT want the opacity at all.

function theRotator() {
//Set the opacity of all images to 0
$('div.rotator ul li').css({opacity: 0.0});

//Get the first image and display it (gets set to full opacity)
$('div.rotator ul li:first').css({opacity: 1.0});

//Call the rotator function to run the slideshow, 6000 = change to next image after 6 seconds

setInterval('rotate()',6000);

}

function rotate() { 
//Get the first image
var current = ($('div.rotator ul li.show')?  $('div.rotator ul li.show') : $('div.rotator ul li:first'));

if ( current.length == 0 ) current = $('div.rotator ul li:first');

//Get next image, when it reaches the end, rotate it back to the first image
var next = ((current.next().length) ? ((current.next().hasClass('show')) ? $('div.rotator ul li:first') :current.next()) : $('div.rotator ul li:first'));

//Un-comment the 3 lines below to get the images in random order

//var sibs = current.siblings();
    //var rndNum = Math.floor(Math.random() * sibs.length );
    //var next = $( sibs[ rndNum ] );


//Set the fade in effect for the next image, the show class has higher z-index
next.css({opacity: 0.0})
.addClass('show')
.animate({opacity: 1.0}, 0);

//Hide the current image
current.animate({opacity: 0.0}, 0)
.removeClass('show');

};



$(document).ready(function() {      
//Load the slideshow
theRotator();
$('div.rotator').fadeIn(1000);
$('div.rotator ul li').fa开发者_如何转开发deIn(1000); // tweek for IE
});


I'm not sure why this would differ between the Mac and Windows version of Chrome, but these lines are what's responsible for the opacity fading:

//Set the fade in effect for the next image, the show class has higher z-index
next.css({opacity: 0.0})
.addClass('show')
animate({opacity: 1.0}, 0);

//Hide the current image
current.animate({opacity: 0.0}, 0)
.removeClass('show');

If you wanted to skip the fading and just cut straight from one image to the next, I'm pretty sure you could just replace this whole section with:

current.removeClass('show');
next.addClass('show');
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜