我有一个简单的导航器组件,其中包含一些按钮和日期选择器子组件。现在的想法是,我可以为整个 div 绑定 keydown.arrowleft
等按键事件(该 div 具有 100% 高度和宽度的 CSS 样式)。它的模板如下:
<div id="ck-navigator" (keydown.arrowleft)="decrementDate();
$event.preventDefault()" (keydown.arrowright)="incrementDate();
$event.preventDefault()">
<button (click)="decrementDate()" class="fa fa-2x fa-chevron-left">
</button>
<ck-date-picker [date]="date" (dateChange)="changeDate($event)">
</ck-date-picker>
<button (click)="incrementDate()" class="fa fa-2x fa-chevron-right"></button>
</div>
我不会展示组件代码,因为这对于这个问题来说并不重要(就我所知)。 目前这个代码是有效的,但只有当我事先主动选择按钮或日期选择器等控制元素时才有效。是否有可能将按键绑定扩展到整个div上(即如果我只是在网站上点击某个地方)。对不起,我对DOM的理解有限,感谢任何推动正确方向的帮助。