SAP Spartacus cxFocus Directive施加后导致tabindex为-1的副作用研究
我第一次看到下圖第44行代碼時(shí),以為僅僅是一個(gè)簡(jiǎn)單的賦值操作,把requiredTabindex的值賦成-1:
后來(lái)發(fā)現(xiàn),這個(gè)requiredTabindex不是一個(gè)字段的值,而是一個(gè)set函數(shù)的名稱(chēng):
而這個(gè)requiresExplicitTabIndex,也不是一個(gè)屬性的名稱(chēng),而是一個(gè)get函數(shù):
tabindex默認(rèn)值為0,
只要元素是A標(biāo)簽,且href或者routerLink至少擁有一個(gè),則requiesExplicitTabIndex返回false,則HTML元素就不會(huì)遭受tabindex設(shè)置為-1的厄運(yùn)。
注意一個(gè)問(wèn)題,在requiesExplicitTabIndex被觸發(fā)時(shí),a標(biāo)簽的href屬性尚未生成:
這個(gè)屬性直到Angular的tick函數(shù)觸發(fā)的changeDetect里才會(huì)被賦予a標(biāo)簽的href屬性:
然而此時(shí)requiesExplicitTabIndex的evaluation早已結(jié)束。
更多Jerry的原創(chuàng)文章,盡在:“汪子熙”:
總結(jié)
以上是生活随笔為你收集整理的SAP Spartacus cxFocus Directive施加后导致tabindex为-1的副作用研究的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 又省一笔!小米手机5折换屏、8折换电池来
- 下一篇: Angular set函数和Compon