5

私は jasny ブートストラップ offcanvas navbar ( http://jasny.github.io/bootstrap/components/#navmenu-offcanvas ) を使用しています。これは、ページの他の場所でクリック イベントが発生するたびに閉じます。ただし、3 つの異なる Twitter アカウント間を移動するように変更された Twitter フィードがあります。それらを切り替えるために、クリックがトリガーされます。これにより、ツイートが切り替わるたびに navmenu が閉じてしまい、それを防ぐことができないようです。

Twitterスクロールコードは次のとおりです。

var tabCarousel = setInterval(function() {
    var tabs = $('#twittertab > li'),
        active = tabs.filter('.active'),
        nextone = active.next('li'),
        toClick = nextone.length ? nextone.find('a') : tabs.eq(0).find('a');
    toClick.trigger('click');
}, 5000)

私は と を適用しようpreventDefault()stopPropagation()しましたtrigger('click')が、jQuery の経験が非常に少なく、これをどこに置くべきかを推測しているだけです。

4

2 に答える 2

0

同様の問題を抱えている人にとっては、navbar自体の外側をクリックしてnavbarを閉じることを犠牲にすることを気にしないのであれば、答えは簡単です. つまり、ソリューションは、navbar の外側をクリックしても閉じないことを意味します。

offcanvas 要素に 'data-autohide="false"' を追加するだけです。

次に、次のように、ナビゲーションバー内のリンクをクリックしてナビゲーションバーの状態を切り替える機能を追加しました。

$('#my-menu > li > a').click(function() {
    $('.navmenu').offcanvas('toggle');
});

これは、別のページに移動しないリンクがあるが、同じページのどこかにアンカーがある場合、クリックしてそのセクションに移動するとメニューが閉じることを意味します。

于 2015-05-26T11:39:59.800 に答える