ドラクエ10の冒険をサポートするサイト

要素中の要素のクラスが全て同じだったときに実行するjquery:アーカイブ:ドラクエ10冒険・サイト運営ブログ


要素中の要素のクラスが全て同じだったときに実行するjquery

こんなスクリプト(jquery)を書いてみました。
 

こんなようなhtmlで
nothingの入れ子の要素のクラスが全て同じ(あああ)だったとき、
.nothingの中を”なし”にするスクリプトです。
 
このサイトで言うと、宝珠を何も落とさないモンスターの時に使おうかと思ってました。
細かく書きますと「.あああ」をcssで「display:none;」にし、
宝珠データをDBから取ってきて「.あああ」の中に「復讐のテンション」があるときは
クラス名も「.あああ復讐のテンション」に変更して
display:none;を回避させてるわけです。

昔はDBに、ここは空白ですよという文字(クラス名)を入れていたんですが、
容量の無駄でしょうということでこの形になったわけです。
・・・なんのはなしでしたっけ
 
スクリプト的には少しひねってまして、
単純に文字を比較するのではなく、アレイに子のクラス名を収納して、
重複を束ねて、
そのアレイ中の数が一つだったときに発火するようにしています。
おそらくループ+ifでやるよりも処理が早いと思いますが、
・・・どうなんでしょうね

スクリプト自体はこれでいけてると思うんですけど
何かしらの例外(同じ宝珠を記載していたとか)でいけてなく、
宝珠があるのに”なし”になったら困るのでボツりました。
それなら数ではなく、重複を束ねた後の文字で比較すれば良いような気もします。
ただcssだけでシンプルに作れそうだったのもありボツはボツなんです。
 
 
ええ、ぼつネタですが?

PC用サイトはこちら
このページでは、株式会社スクウェア・エニックスを代表とする共同著作者が権利を所有する画像を利用しております。 当該画像の転載・配布は禁止いたします。
お問い合わせ
管理人:きゃぺりすたー(DQ10ネームではありません)
メールはこちらへ
info@dq10as.net