複数の要素の存在確認をして、すべてあれば実行する。いずれかがなければ実行しない。
などの条件分岐を書きたいです。
以下のようにかけば良いと思いますが、
この&&が増えていく可能性があり、もっとスマートに書く方法はありますか?
変数はどの要素もあとから別の場所で使用したいので別々に変数宣言しています。
var $hoge = $('.hoge'); var $fuga = $('.fuga'); var $piyo = $('.piyo'); var $puyo = $('.puyo'); if ($hoge[0] && $fuga[0] && $piyo[0] && $puyo[0]) { console.log('すべて存在する'); } else { console.log('いずれか存在しない'); }
もしあればご教示いただきたいです。
追加です。変数宣言の部分ですが、実際には以下のような複雑な取得方法が必要なため
変数宣言の部分は変えたくないです。
var $hoge = $('.hoge').find('a'); var $fuga = $('.fuga').nextUntil('p'); var $piyo = $('.piyo').eq(0); var $puyo = $('.puyo').parent('div');
その他にも..以下のようなこともありそう等、他にも理由あるので変数宣言は変えず、
条件分岐の&&をたくさんつないでいく書き方スマートにしたいです。
var $hogehoge = $('img[alt="hogehoge"]').closest('.fugafuga'); var $fugafuga = $('a:contains("ふがふが")').parent('section').eq(1);
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/12/23 00:41