代码之家  ›  专栏  ›  技术社区  ›  Rolando

如何在Angular应用程序中处理右键单击事件?

  •  45
  • Rolando  · 技术社区  · 8 年前

    在Angular中,有没有方法捕捉右键单击事件?我看到(单击)和(dblclick),但当我尝试(右键单击)时,它不会触发任何事件。是否有一种方法可以包含右键单击事件,并让它们由类似于click和dblclick(如果不存在)的函数来处理?

    2 回复  |  直到 8 年前
        1
  •  79
  •   Zzz    8 年前

    事件名称为contextmenu。因此,您的html模板代码可以如下所示:

    <div (contextmenu)="onRightClick($event)"></div>
    

    $event是一个可选参数,因此模板和事件处理程序可以如下所示:

    <div (contextmenu)="onRightClick()"></div>
    
    onRightClick() {
        return false;
    }
    

    注意:可以返回false;避免事件中的默认浏览器操作。

        2
  •  9
  •   vnapastiuk    5 年前

    事件名称为“contextmenu”,因此您应该使用如下内容:

    <button (contextmenu)="onRightClick($event)"> Right click me </button>
    

    那么onRightClick函数应该如下所示:

    onRightClick(event) {
     event.preventDefault() //this will disable default action of the context menu
     //there will be your code for the expected right click action
    }
    
    推荐文章