Ngx-drag-scroll: 点击传播

创建于 2018-07-13  ·  8评论  ·  资料来源: bfwg/ngx-drag-scroll

  • 我提交一个...

    • [x] 错误报告

    • [ ] 功能要求

    • [ ] 支持请求 => 请不要在此处提交支持请求,请参阅此模板顶部的注释。

当我拖动并释放单击时,我遇到了一些问题,该事件似乎没有停止其传播,因为“问题 #54 - 修复:在拖放后立即阻止单击传播”说。

  • 版本:1.8.2
  • 浏览器:所有桌面浏览器

所有8条评论

我无法在 2.0.0-beta.3 中重现。 你能给我repro步骤吗?

你好! 谢谢你的回答。 我正在尝试滚动浏览“divs”元素,也许这不是正确的方法。
这是代码:

<drag-scroll class="drag-scroll center" #dragScroll scrollbar-hidden='true' drag-scroll-y-disabled='true' snap-disabled='true'>
        <div drag-scroll-item *ngFor="let ah of article_list">
          <col-article [article]="ah"></col-article >
        </div>
 </drag-scroll>

我只单击图像,拖动它,但是当我释放它时,它只是将我重定向到图像链接。 还有另一种可能添加“dragend”事件吗?

滚动简单图像和“divs”元素之间有什么区别吗? 该模块的其余部分工作正常,这是一项非常好的工作。

我一直在尝试在演示中重现该问题,并且当拖动项目是链接时会发生这种情况。 例如,在演示中,如果您将任何图像从

<img _ngcontent-c6="" src="assets/img/c3po.png">

<a href="http://anyurl.com"><img _ngcontent-c6="" src="assets/img/c3po.png"></a>

它与我的项目具有相同的行为。

我希望它有帮助,问候!

为了避免这个问题,我在我的代码中进行了轻微的处理。
html:
`

               <div   dragScroll   (reachesLeftBound)="leftBoundStat($event)" (reachesRightBound)="rightBoundStat($event)" #nav > 

                    <div class=" slide-mes"   *ngFor="let item of items " (click)="doAny(item)" >

                    </div>

                </div>

`

打字稿:

`

@ViewChild('nav', {read: DragScrollDirective}) ds: DragScrollDirective;
clickEnable = true;
constructor( ) {
}
@HostListener('mousedown', ['$event'])
onMousedown(event) {

    this.clickEnable = true

}
leftBoundStat(reachesLeftBound: boolean) {
    this.leftNavDisabled = reachesLeftBound;
    this.clickEnable = false;
}

rightBoundStat(reachesRightBound: boolean) {
    this.rightNavDisabled = reachesRightBound;
    this.clickEnable = false;
}
doAny(item){
    if(this.clickEnable){
        //do what you whant on click here
    }
}

`

嗨吉尔赫姆! 感谢您的回答! 当您没有达到任何界限时,这是否有效? 因为在我的实现中,我有很多 iitems 需要滚动,并且当我在它中间释放点击时它会传播,例如,而不是在边界中,并且只有当你到达其中一个时才会产生边界事件(左或对)。

滚动 div 时会产生 bounds 事件,在其中放置一个 console.log 来查看。

谢谢! 有效! 但是我也必须调整所有子组件来监听鼠标事件。这就是为什么我在模块本身中要求该功能。

@leogilardi6 ,很抱歉回复晚了。 我被工作淹没了。

我尝试将https://github.com/bfwg/ngx-drag-scroll/blob/develop/demo/app/home/home.component.html#L4 -L12 更改为

    <drag-scroll class="demo-one"
      drag-scroll-y-disabled="true"
      scrollbar-hidden="true"
      (reachesLeftBound)="leftBoundStat($event)"
      (reachesRightBound)="rightBoundStat($event)"
      #nav
      >
      <a drag-scroll-item *ngFor="let image of imagelist" href="https://www.google.com"><img [src]="'assets/img/' + image" (click)="clickItem(image)"/></a>
    </drag-scroll>

但我无法在 2.0.0-beta.3 版本中重现

你试过玩最新版本吗?

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

IlCallo picture IlCallo  ·  14评论

Andi1990 picture Andi1990  ·  7评论

IlCallo picture IlCallo  ·  12评论

CrackerakiUA picture CrackerakiUA  ·  25评论

Another-Sam picture Another-Sam  ·  12评论