セクションごとに矢印キーでページをナビゲートできるように指示を作成しようとしています。しかし、私はまた、それらのセクションをdomの周りに散らばって、物が追加されたり削除されたりしてもこれが壊れないようにしたいと思っています。私はこれを行うには、いくつかの方法を考えることができ、それらのどれも満足のいくものでない:Angularjs:ディレクティブのすべてのインスタンスを検索
は他のディレクティブは、自分自身を登録(そして$破壊に登録解除)することができますコントローラとディレクティブを作成します。後で途中で何かを追加すると、これはうまくいかないでしょう。また、私はこのように記述しようとしましたが、必要以上にコードが多くなるようです。
ユーザーが矢印キーを押すたびに、空の配列を作成し、イベントをブロードキャストし、ディレクティブがそのリストに登録されるようにコールバックを設定します。その後、そのリストがいっぱいになったら、前に進んでください。彼らはDOM上の順番に戻ってくるはずですが、私はこの方法が狂ってハックしているとは確信していません。
「tabbable」というものをCSSでマークし、これをjqueryなどの簡単な方法で記述します。新しいクリックイベントの場合は
var all = $('.tabbable')
にしてください。しかし、私は本当にそれをやりたいとは思っていません。なぜなら、それは「角度のある」方法ではないからです。何らかの純粋さからではなく、これをウィジェットのより大きなライブラリの一部として構築しているので、私はこの機能をアクセシブルにしたいと思っています。
だから、私は奇妙なハックに頼る、またはすべての場所でアウトロジックを広げずに、特定のタイプのすべてのディレクティブのスコープを取得するための方法はありますか?
配列がシャッフルされて配列の順序を処理するための提案はありますか? – doubledriscoll
私は提案をする前に、要件を少し良く理解する必要があると思います。あなたはDOMの挿入などに関して階層的、年代順に並べ替えたいですか? –