如何更改在jquery中为animate函数添加不透明度

时间:2010-12-25 21:53:38

标签: jquery jquery-animate opacity

我有以下代码来自http://css-tricks.com/startstop-slider/我希望将animate属性从img上的顶部动画转换为淡出的不透明淡化。我将如何使用以下代码执行此操作。

// SET THIS VARIABLE FOR DELAY, 1000 = 1 SECOND
var delayLength = 5000;

function doMove(panelWidth, tooFar) {
 var leftValue = $("#mover").css("left");

 // Fix for IE
 if (leftValue == "auto") { leftValue = 0; };

 var movement = parseFloat(leftValue, 10) - panelWidth;

 if (movement == tooFar) {
  $(".slide img").animate({
   "top": -600
  }, 1000, function() {
   $("#mover").animate({
    "left": 0
   }, function() {
    $(".slide img").animate({
     "top": 40
    });
   });
  });
 }
 else {
  $(".slide img").animate({
   "top": -600
  }, 1000, function() {
   $("#mover").animate({
    "left": movement
   }, function() {
    $(".slide img").animate({
     "top": 40
    });
   });
  });
 }
}

$(function(){

    var $slide1 = $("#slide-1");

 var panelWidth = $slide1.css("width");
 var panelPaddingLeft = $slide1.css("paddingLeft");
 var panelPaddingRight = $slide1.css("paddingRight");

 panelWidth = parseFloat(panelWidth, 10);
 panelPaddingLeft = parseFloat(panelPaddingLeft, 10);
 panelPaddingRight = parseFloat(panelPaddingRight, 10);

 panelWidth = panelWidth + panelPaddingLeft + panelPaddingRight;

 var numPanels = $(".slide").length;
 var tooFar = -(panelWidth * numPanels);
 var totalMoverwidth = numPanels * panelWidth;
 $("#mover").css("width", totalMoverwidth);

 $("#slider").append('<a href="#" id="slider-stopper">Stop</a>');

 sliderIntervalID = setInterval(function(){
  doMove(panelWidth, tooFar);
 }, delayLength);

 $("#slider-stopper").click(function(){
  if ($(this).text() == "Stop") {
   clearInterval(sliderIntervalID);
    $(this).text("Start");
  }
  else {
   sliderIntervalID = setInterval(function(){
    doMove(panelWidth, tooFar);
   }, delayLength);
    $(this).text("Stop");
  }

 });

});

2 个答案:

答案 0 :(得分:1)

它应该可以将被动画的属性更改为“不透明度”:

$(".slide img").animate({
    "opacity": 1
},

答案 1 :(得分:0)

我没有jquery专家,但你可以简单地用.fadeIn(“slow”)替换.anan。