ここに私の問題があります。私は友人が Twitter のブートストラップの更新、特にナビゲーション バーを更新するのを手伝おうとしています。ドロップダウン メニューのある項目をクリックしても、メニューが開きません。
私の問題は、ドロップダウン メニューが開かないことです。私の調査では、ブートストラップの JavaScript がオープン クラスを間違った ul に適用しているため、ドロップダウンが表示されないことがわかりました。
http://twitter.github.com/bootstrap/javascript.html#dropdownsの指示に従って、すべてを設定しました。私が見る限り、それはすべて正しい設定です。
ドロップダウンを含むカスタム ブートストラップをエクスポートしました。
ページは、javascript コンソールでエラーなしで実行されます。
私の調査から、「印刷」(ドロップダウンがあります) をクリックすると、実際には ul.level-0.nav に移動し、クラス「open」が追加されることがわかりました。実際にはそのクラスを a.dropdown-menu に適用する必要があるため、これは問題です。
ここで構造を参照してください。
ul.level-0.nav
li.dropdown
a.dropdown-toggle
ul.dropdown-menu
問題を再現するには、
ステップ 1: http://jsfiddle.net/uGGgS/1/をクロムで
ステップ 2: chrome オブジェクト インスペクターを開きます (または、firefox を使用している場合は firebug を、IE を使用している場合は、chrome をダウンロードして、IE を使用するために自分を平手打ちします)。
ステップ 3: ドリルダウンli.haschild.dropdown a:contains('print')
ステップ 4: [印刷] メニュー項目をクリックすると、ul.level-0.nav のクラスが「open」になっていることがわかります。また、ドロップダウン メニューが表示されないことにも注意してください :(
ステップ 5: クラスopen
を print の下の ul.dropdown-toggle に追加すると、ドロップダウンが表示されます。
ここで誰かが私が間違っていることを知っていますか? ページで w3c 検証を実行しましたが、html ページに閉じられていないタグがあることを示すエラーはありませんでした。
ありがとう。