2017-04-18 10 views
-1

私はいくつかのリンクを持つヘッダーを持っています。ヘッダーが十分に短くなると、モバイルビューになります(折りたたみスタイル)。トリガーブートストラップ4ドロップダウンで解像度/携帯端末

最初にドロップダウンを表示したいが、通常のように非表示にして再び表示するように切り替えることができます。基本的に私が欲しいのは、ページがロード/リサイズされ、navbarがモバイルに入るときに、ドロップダウンが表示されるように切り替えることです。

次の操作を行うことにより、ドロップダウンを切り替えることができます。

$("#element").dropdown("toggle"); 

はここに私の例で周りを再生する:https://codepen.io/anon/pen/ZKbJJV

+0

なぜ誰が私に彼らがdownvotedを教えてもらえば、それはb e素晴らしい。ありがとう。 – MortenMoulder

答えて

-1

をUPDATE:

$(document).ready(function() { 
    $(window).resize(function() { 
     if($(window).width()<=768) { 
      $("#element").removeClass("dropdown-menu"); 
     }else{ 
      $("#element").addClass("dropdown-menu"); 
     } 
    }); 
    if($(window).width()<=768) { 
     $("#element").removeClass("dropdown-menu"); 
    }else{ 
     $("#element").addClass("dropdown-menu"); 
    } 
}); 

今、私は削除してもう一度試してみましたクラスを追加すると動作します。あなたは、ページが完成しロードした後に、コードを実行行うことができます http://codepen.io/julianschmuckli/pen/ybYzQe

$(document).ready(function() { 
    if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) { 
    $("#element").dropdown("toggle"); 
    } 
}); 

それがモバイルであるかどうかを検出するためには、私はここからスニペットをコピー:What is the best way to detect a mobile device in jQuery?

それともすることもできます特定のページ幅で定義するためにこのバージョンを試してください:

$(document).ready(function() { 
    if($(window).width()<=768) { 
     $("#element").dropdown("toggle"); 
    } 
}); 
+0

1)私はモバイルでしかやりたくない。 2)サイズを変更するとどうなりますか?それはその後トリガーされません。 3)サイズを変更してドロップダウンが表示されたら、もう一度サイズを変更して再びトグルするとどうなりますか?それはそれを隠すでしょう。申し訳ありませんが、それはちょうどそれをトグルするよりも少し時間がかかります。 – MortenMoulder

+0

@MortenMoulder私は自分の答えを更新しました。 –

+0

違反はありませんが、実際に試していますか?私はcodepenのリンクを提供し、あなたがしていることは機能しません。これがどのように機能するか考えてみると、768でサイズを変更しているピクセルごとにトグルコードが実行されます。ウィンドウのサイズを変更すると、文字通り何百回も切り替えることになります。 – MortenMoulder

関連する問題