假設我有一個鏈接,當單擊鏈接時會使整個頁面淡出。我淡出頁面的原因是因爲下一頁即將加載,但尚未加載。我可以使用pointer-events: none
這將禁用任何鼠標事件,直到加載下一頁。完全禁用父項中的元素焦點
假設它是通過鍵盤完成的,我可以使用以下命令來防止雙擊輸入,或者乾淨地禁用其中的所有元素,例如tab-enter也會以這種方式禁用。
parent.onkeydown = fals
parent.onkeyup = fals
parent.onkeypress = fals
function fals() {return false}
這適用於短負載,但如果需要很長時間才能加載,用戶可能會注意到以下困難。
- 無法遠離a標籤。
- 不能使用幾個控制瀏覽器的鍵盤快捷鍵。
- 能夠從地址欄中進入禁用區域。
除了爲所有子元素設置onfocus = blur之外,是否有一種現代而又流暢的方法來防止這三個問題?我今天不關心IE。
您的前兩個「問題」看起來不像問題,它的行爲如您所指示的那樣。除此之外,爲什麼不從鏈接中解脫出來呢? – Madbreaks
**按照指示行事**我不滿意前兩項是可能的事實。例如,我想允許用戶將模式div或地址欄列出,並且我不希望他們能夠回退。 **爲什麼不從鏈接unattach行爲**有多個鏈接和按鈕。我敏銳地意識到,我可以添加處理程序的鏈接來照顧(設置disabled = true,href = null)我希望有一種方法可以將一條規則應用於父項,這就是我所要求的關於。 –