【问题标题】:Angular2 dispatch DragEventAngular2 调度 DragEvent
【发布时间】:2016-04-18 12:29:18
【问题描述】:

我需要调度并创建一个新的 DragEvent

var dispatchedDragEvent = DOM.createEvent('DragEvent');                    
dispatchedDragEvent.initDragEvent('dragstart', null, null, null, null, null, null, null, null, null, null, null, null, null, null, null);                    
DOM.dispatchEvent(this.htmlElement, dispatchedDragEvent);

但我得到错误 initDragEvent is not a function,因为 DOM.createEvent('DragEvent') 返回一个 Event 对象而不是 'DragEvent'

有人可以帮我手动创建一个DragEvent 并发送它吗?

我需要将TouchStart 转换为DragStart

【问题讨论】:

  • 我认为DOM.createEvent('DravEvent') 是一个错字(复制粘贴错误)
  • 是的,这是一个复制错误,但不是我的问题的问题 =)
  • 有这方面的消息吗?

标签: drag-and-drop angular touch dispatchevent


【解决方案1】:

这是我所做的:

@HostListener('touchstart', ['$event'])
    onTouchStart(event) {
            let event1 = new DragEvent('dragstart');
            this._renderer.invokeElementMethod(this._elementRef.nativeElement, 'dispatchEvent', [event1]);
        }

这可能会在编译时发出警告,但仍然有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-10
    • 2018-01-21
    • 2013-12-28
    • 1970-01-01
    • 2016-11-08
    相关资源
    最近更新 更多