私はこれをグーグルで試してみましたが、私はどのキーワードを使用するべきなのかよくわからないので空になります。いずれにしても、私の機能や発射方法が比較的単純なものを見逃しているような気がします。リサイズ時に異なる機能を発動する
私の希望する機能は次のとおりです。「.menu-item-has-children a i」という構造のナビゲーションの隣に小さな矢印があります。モバイル(880px未満)では、その<i>
要素をクリックして、下に<ul>
を切り替える必要があります。デスクトップでは、私はしません。これは、2つのビューポートサイズ(880未満と880以上)を切り替えるまでうまく動作します。その後、ページをリロードするまで、目的の機能は起動しません。あなたができる、
jQuery(document.ready(function($) {
function mobileNav() {
var w = $(window).width();
if (w < 879) {
$('.menu-item-has-children a i').click(function(e) {
e.preventDefault();
$(this).parents('menu-item-has-children').children('ul').toggle();
$(this).toggleClass('turned');
});
}
}
mobileNav();
jQuery(window).resize(function($) {
mobileNav();
});
});
バックエンドでモバイル用とデスクトップ用に異なるマークアップが作成されているのだろうか。 '$( '。menu-item-has-children a i')'が両方のために存在するかどうかを確認してください。 – Shanimal
shanimalさんありがとうございます - 私はチェックしました。はい、両方のマークアップは同じです。私の知る限りでは、jQueryは要素のマークアップを変更していないので、その要素の動作を変更するだけです。 –