Angular JS中的滑动支持

时间:2015-10-28 08:15:06

标签: android ios angularjs angularjs-directive angular-ui-bootstrap

我正在开发AngularJs应用程序,我希望通过滑动支持来标记内容。 我对角度很新,我对角度设施不太了解。下面是我的代码

<tabset>
  <tab heading="Tab Item 1">
        <h3 class="header">Heading 1</h3>
        <div class="body">
        Body Conten one
        </div>
  </tab>
  <tab heading="Tab Item 3">
        <h3 class="header">Heading 2</h3>
        <div class="body">
        Body Conten Two
        </div>
  </tab>
  <tab heading="Tab Item 3">
        <h3 class="header">Heading 3</h3>
        <div class="body">
        Body Conten Three
        </div>
  </tab>
</tabset>

当用户在标签内容上滑动时,应该支持滑动。请帮助我实现这个目标

2 个答案:

答案 0 :(得分:0)

有指令ng-swipe-left =&#34; fn1()&#34;和ng-swipe-right =&#34; fn2()&#34;。

当您向屏幕左侧滑动时调用fn1,在向右滑动屏幕时调用fn2。 最好在顶级div中使用它。

<div ng-swipe-left="fn1()" ng-swipe-right="fn2()></div>

您必须确保在所有ng-click或此div中的任何其他事件中使用$event.stopPropagation(); 所以,

<div ng-swipe-left="fn1()" ng-swipe-right="fn2()>

<div ng-click="fun3();$event.stopPropagation();"></div>

 </div>

所以这里在每个标签中使用它,并使用ng-hide或ng-show实现隐藏和显示。也可以在css中使用一些不透明度和过渡,以便从左向右移动,反之亦然。

答案 1 :(得分:0)

您可以按照建议使用ngTouch模块,也可以使用HTML5多点触控事件编写自己的Angular指令。我这样做是为了实现简单的导航,就像OP提供的那样。指令绑定到我们想要通过属性滑动的元素,可以像这样使用:

<tab heading="Tab Item 2" my-swipe="[goLeft, goRight]">

其中goLeft和goRight是包含可转换元素的控制器上的函数 - 有关完整代码和使用示例,请参阅此plunkr

一旦检测到轻扫手势,指令就开始移动内容并在touchEnd事件上执行功能,所以感觉非常自然。

相关问题