fadeIn()不会使网页滚动到正确的位置

时间:2017-03-30 22:53:03

标签: javascript jquery scroll slideshow fadein

我使用jQuery来实现幻灯片放映动画 html看起来像:

<div class="slideshow pointer">
  <img class="next" src="img1">
  ...
</div>  

我使用jQuery查找下一个图像,淡出前一个图像并淡入下一个图像。通过图像拇指的单击动作使该幻灯片部分可见。加载第一张图像后,网页将滚动到正确的位置(显示图像的正确位置) 但是当我点击显示下一张图片时,网页滚动到另一个地方,然后点击下一步,网页滚动到另一个不同的地方。地址保留在'www.xxx.home.html#/ books / 01 /'。我使用另一个javascript函数使这个地址在正确的位置显示网页 我已经检查过,当我点击显示下一个图像时,只使用了这个函数,没有其他函数可以导致slideDown或滚动动作(不是100%肯定)。我想知道fadeIn()动作是否比我预期的更多,例如一些滚动动作?
javascript代码:

$('body').on('click', '.slideshow img', function(e){ 
  var thisimg = $(this);  
  var thisss = thisimg.parent();  
  var totimgs = thisss.find("img").length;  
  if (totimgs > 1){  
    var thisindex = thisimg.index();  
    var x  = e.pageX - 240;  
    if (x < 240 || x > 600) {  
      if (x < 240) {  
        var nextindex = thisindex - 1;  
        if (nextindex < 0) {
          nextindex = totimgs - 1;
        }
      } else if (x > 600) {
        var nextindex = thisindex + 1;
        if (nextindex > totimgs - 1) {
          nextindex = 0;
        }
      } else {
        nextindex = thisindex;
      }
      thisimg.fadeOut(500);
      var nextss = thisss.find("img:nth-child(" + (nextindex + 1) + ")");
      nextss.fadeIn(500);
    }
  }
});

有人能说出理由吗?或者还有什么我需要检查是什么使这个滚动?

0 个答案:

没有答案