我有一個普通的 mat-slide-toggle 和一個點擊事件,如下所示:
<mat-slide-toggle (click)="do()" [(ngModel)]="checked"></mat-slide-toggle>
該組件由單擊和空格鍵觸發。但是使用空格鍵它不會觸發點擊事件。我該怎么做?
并且在可訪問性方面。用空格鍵觸發而不是用回車鍵觸發是正確的嗎?
uj5u.com熱心網友回復:
但是使用空格鍵它不會觸發點擊事件。我該怎么做?
您應該使用(change)="do()"作為底層組件的input type="checkbox". 這應該涵蓋所有輸入型別。
并且在可訪問性方面。用空格鍵觸發而不是用回車鍵觸發是正確的嗎?
是的,開關的操作方式與復選框相同,因此預期的鍵是Space。您可以role="switch"在 MDN 上閱讀有關元素的預期行為的更多資訊。
值得注意的是,如果 a 的底層組件role="switch"是 a<button>那么你可以使用(click)="do()"它,它也可以使用Enter,但在材料庫組件中情況并非如此(盡管知道你是否曾經制作過自己的組件很有用!) .
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/360619.html
上一篇:顯示標題列但不顯示行的墊表
