リンクをクリックするとページ全体がフェードアウトするリンクがあるとします。ページをフェードアウトする理由は、次のページがロードされようとしているが、まだロードされていないためです。pointer-events: none
次のページがロードされるまでマウスイベントを無効にするものを使用できます。
キーボードで行われたと仮定すると、次を使用して二重入力を防ぐか、内部のすべての要素をきれいに無効にすることができます。たとえば、タブ入力もこの方法で無効になります。
parent.onkeydown = fals
parent.onkeyup = fals
parent.onkeypress = fals
function fals() {return false}
これは短いロードではうまく機能しますが、ロードに長い時間がかかる場合、ユーザーは次の問題に気付くかもしれません。
- a タグから離れることはできません。
- ブラウザを制御するいくつかのキーボード ショートカットを使用できません。
- アドレスバーから無効な領域にタブで移動できます。
すべての子要素に onfocus=blur を設定する以外に、これら 3 つの問題を防ぐための現代的で洗練された方法はありますか? 今日はIEは気にしません。