全屏内容滑块仅向右滑动

Posted

技术标签:

【中文标题】全屏内容滑块仅向右滑动【英文标题】:Full Screen Content Slider Only Slides Right 【发布时间】:2016-10-31 01:00:36 【问题描述】:

我目前正在开发一个全屏滑块,它应该根据用户单击的按钮向左或向右移动。单击下一个时效果很好,但是单击上一个时,滑块只是淡入,而不是滑动,尽管与下一个按钮具有相同的代码(但边距相反)。

这是我正在做的事情(下一个和上一个按钮):

    $("#prevproject").click(function(e) 
    e.preventDefault();
    //subtract 1 from i unless i is 0, then set i = 12 (last element)

    if (i == 0) 
      i = 12;
     else 
      i = i - 1;
    
    $('#project').attr('data-name', projects[i]);
    $('#project #slide').animate(
          'marginRight': '25%',
          'opacity': 0
        , 200, function() 

          switchProjects(projects[i]);

          $('#project #slide').css(
            'marginRight': '-25%'
          );
          $('#project #slide').animate(
            'marginRight': '0',
            'opacity': 1
          , 200);
          //=================================
);




);

$("#nextproject").click(function(e) 
    e.preventDefault();
    //add 1 from i unless i is 12, then set i = 0

    if (i == 12) 
      i = 0;
     else 
      i = i + 1;
    

    $('#project').attr('data-name', projects[i]);
    $('#project #slide').animate(
          'marginLeft': '25%',
          'opacity': 0
        , 200, function() 

          switchProjects(projects[i]);

          $('#project #slide').css(
            'marginLeft': '-25%'
          );
          $('#project #slide').animate(
            'marginLeft': '0',
            'opacity': 1
          , 200);
          //=================================
);

我有一个带有内部 div 的容器 div,并将幻灯片效果放在内部 div 上。内容在屏幕外通过 switchProjects 函数加载,并与新内容一起滑回。

 <div id="project">
  <div id="slide">
  <div class="row">
    <div class="column small-12 medium-4">
      <h4></h4>
      <p></p>
      <img  id="map"/> </div>
  </div>
  </div>
</div>

对于下一个但不是以前的效果很好。有什么想法吗?

【问题讨论】:

【参考方案1】:

对于任何人来说。解决方案是将 marginLeft 设置为我在下一个函数中所做的与设置 marginRight 的相反。

$('#project #slide').animate(
          'marginLeft': '-25%',
          'opacity': 0
        , 200, function() 

          switchProjects(projects[i]);

          $('#project #slide').css(
            'marginLeft': '25%'
          );
          $('#project #slide').animate(
            'marginLeft': '0',
            'opacity': 1
          , 200);
          //=================================
);

【讨论】:

以上是关于全屏内容滑块仅向右滑动的主要内容,如果未能解决你的问题,请参考以下文章

Bootstrap 4 滑块仅文本推荐

寻找特定类型的 jQuery 内容滑块 [关闭]

Jquery轮播滑块仅在悬停时循环并在鼠标离开时停止?

jshowoff 滑块 - 在滑动时添加更改幻灯片

selenium java 怎么向右拖动

在 Xcode 6.1、iPhone 6 plus、iPad 滑块黑屏