ナビゲーションバーが正しく機能するようにウィンドウ幅をチェックするjquery関数を設定しようとしています。スクリーン幅がの場合は、が949pxより大きい場合は、.dropdownアンカーリンク上にホバーすると、ドロップダウンメニューが開きます。画面の幅がで、が949px以下の場合は、その機能を削除してドロップダウンメニューを開くために.dropdownアンカーリンクをクリックする必要があります(ドロップダウンメニューはクリックするとデフォルトで開きますこれはブートストラップコンポーネントです)。jqueryウィンドウのサイズ変更機能のみすべてのサイズ変更の代わりに1回トリガー
私はstackoverflowで見つかったいくつかの同様の例に基づいていくつかの関数を作成しましたが、画面幅が949pxを超えると関数がトリガすることがわかりましたので、.dropdownアンカーはホバー私が望んでいないもの。
var width = $(window).width();
$(window).resize(function(){
if($(this).width()>949){
$(".dropdown").hover(function(){
$(this).addClass("open");
},
function(){
$(this).removeClass("open");
});
}
});
.dropdownホバー機能が949px以上の幅で添加し、949px以下で除去されるように、どのように私は、この機能を向上させることができますか?
probaply
ジャストを確認するにします。var A - B;その構文は正しいのですか? – elfwyn
サイズが949より大きいときにホバーイベントを.dropdownボックスに追加するのが見えますが、サイズが小さくなったらそのリスナーを削除したくないのですか?私はあまりjqueryの方法に慣れていないが、私はイベントリスナーを削除する関数を持っていることを確認してください:on()とoff()を見てください – elfwyn
ちょっと変わったよ、それは編集されたタイプミス。私はあなたの提案でスクリプトを修正する方法を完全にはわかりません...私の考えは、両方の機能(ホバーの追加またはホバーの削除)は "オン"の変更イベントに依存しているということです。 –